The only things you need to get started are Apple's free Xcode Developer Tools, a Java application that you want to deploy, and an icon for your application (as I learned, this needs to be in Apple's 'icns' format).
Sep 23, 2003 Anyways, here is a list of files you need to run (but not use) g2gui on os x: boot.jar g2gui.jar gnu-regexp-1.1.4.jar jface.jar libswt-carbon-2135.jnilib runtime.jar swt.jar trove.jar Put all these in the same folder. Use the terminal and cd to that folder. Use this command to run it. JarBundler is a feature-rich ant task which will create a Mac OS X application bundle from a list of Jar files and a main class name. You can add an Icon resource, set various Mac OS X native look-and-feel bells and whistles, and maintain your application bundles as part of your normal build and release cycle.
I'm going to walk through the Jar Bundler process for a sample application I've named 'WikiTeX'. WikiTeX is an enhanced text editor, created as a Java application with a Swing/JFC interface. Like most Java applications, WikiTeX is organized as a collection of jar files, with one main jar file (wikitex.jar) and a small collection of other third-party jar files. Additionally, I have other separate files and directories that are used by my custom help system.
Starting Jar Bundler
With the Mac Xcode tools installed, you'll find the Jar Bundler application in the /Developer/Applications/Java Tools/ folder. (Start the Finder, click Macintosh HD, then open the Developer, Applications, and Java Tools folders, then double-click the Jar Bundler application.)
When Jar Bundler starts up you'll see it's a simple one-screen application with three tabs named Build Information, Classpath and Files, and Properties. Figure 2.1 shows the application as it first starts up.
I start creating my application bundle by filling in the fields of the Build Information panel. The first field is labeled 'Main Class', but I think that's a little misleading, at least when my application is already stored in a jar file. What really happens is that I click the 'Choose..' button, then use the file chooser to locate my jar file. When I select that jar file, Jar Bundler is smart enough to detect that my 'main' class is named com.devdaily.opensource.jelly.Main. ('Jelly' was the original name of the editor.)
An interesting note is that this is where you can tell that Jar Bundler itself is written in Java. When you click the 'Choose..' button you'll see a strange looking file chooser dialog show up. This is the javax.swing.JFileChooser on the Mac. I learned recentlythat the java.awt.FileDialog actually looks more like a native Mac OS X file chooser than the Swing file chooser, so you want to use the older FileDialog. In this case the Jar Bundler developers used the newer javax.swing.JFileChooser, and the difference is striking.
The second field, 'Arguments to Main', lets me define any command-line arguments that I need to pass in to my main class, but I don't have any, so I just skip it.
The Options group
Next, in the 'Options' group at the bottom of the panel, there are checkboxes that let me choose the Mac-specific options that I covered in my previous tutorial. The checkboxes that are enabled varies depending on the JVM Version you choose. Since my code is written with Java 5 syntax I choose JVM Version 1.5+, resulting in the options named 'Use Macintosh menu Bar', 'Anti-alias Text', and 'Anti-alias Graphics' being enabled.
Hmm, since these options are available, the first time through the wizard I'm going to use an older version of my WikiTeX application, and see what these checkboxes actually do. I know that they should add the Mac-specific arguments to the JVM that equate with these checkboxes, but I want to see how they do that, so I'll go ahead and select each checkbox.
Choose an application icon
The Build Information panel is also where I choose an icon for my application. I don't have a real icon, but I do have a JPG image, and I'll see if I can use that. (One bummer here: when I click the Choose Icon link I'm disappointed to see that the 'open file' dialog didn't remember my path information. All of my information is in one directory, which seems like what most developers would do, and it would have been nice if Jar Bundler had remembered that directory as a default.)
The file chooser is set to look for a file format of 'Icon Files', i.e., those files with an extension of .icns. I don't have any of those, but fortunately I can change this field to look for 'All Files', so I do that, click around to get to my working directory, then choose my JPG file. I don't know if this will work, but I'll give it a try.
Because of the way the UI looks I'm tempted to click the 'Create Application..' button, but I'll just move on to the next tab.
Up:java-on-mac Previous:Introduction Next:The 'Classpath and Files'Contents
Developer(s) | Apple Inc. |
---|---|
Stable release | |
Operating system | macOS |
Type | IDE |
Website | Apple Developer |
The Apple Developer Tools are a suite of software tools from Apple to aid in making software dynamic titles for the macOS and iOS platforms. The developer tools were formerly included on macOS install media, but are now exclusively distributed over the Internet. As of macOS 10.12, Xcode is available as a free download from the Mac App Store.
Applications[edit]
Applet Launcher[edit]
A graphical interface for Sun’s Java Plug-in, which aids developers by demonstrating how Java applets perform on macOS. Provides tools to adjust the performance, behavior and user experience in applets in development.
Audio Unit Lab[edit]
A graphic presentation of audio units helping software developers to examine their results in decibels. AU Lab can be used to test audio units, conduct live mixing, and playback of audio content. Audio units are controlled visually with the audio unit’s graphic interface and touch screen.
Computer Hardware Understanding Development Tools[edit]
A set of software tools, collectively Computer Hardware Understanding Development Tools (CHUD Tools) measure software performance on macOS, to aid in optimizing. Also provides hardware system benchmarks
Core Image Fun House[edit]
Used in testing Core Image units, which function similar to Adobe Photoshop filters. Each has a specific action, with parameters customize the action. Showcases Core Image, a technology introduced in Mac OS X 10.4, supported by newer graphic hardware.
CrashReporterPrefs[edit]
A developer utility for setting report parameters for Apple's Crash Reporter application.
- Basic: Shows a dialog asking the user what to do.
- Developer: Provides additional debug info and automatically shows the mail to Apple window.
- Server: Runs silent, but keeps all the logs.
- None: Disables the dialog prompt. Crash reports are neither displayed nor logged.
FileMerge[edit]
A staple of macOS's developer tools since the days of NeXTSTEP, FileMerge graphically compares two or more versions of a file. True to its name, FileMerge allows the user to easily merge the two or more versions into one file. The utility is often used to track changes to source code.
macOS's opendiff command provides the ability to launch FileMerge from the command line. The -ancestor parameter can be used for three-way merging.
Help Indexer[edit]
Creates an index file for the macOS built-in Help Viewer.
icns Browser[edit]
Views the resources for an .icns file, displaying the Mini, Small, Large, Huge, Thumbnail & Tile sizes in all color depths and masks.
Icon Composer[edit]
Icon Composer was an icon editor that does not have any editing features other than composing Apple Icon Image files and Windows ICO files. External editors must do all the image manipulation, then the results may be imported into the converter to create the finished icon. As of XCode 8.2, Icon Composer is no longer available in Additional Tools, as it cannot create high resolution icons. Apple recommends using the command-line utility iconutil, which ships with macOS [1].
Instruments[edit]
Instruments is a GUI for tracing framework DTrace from Sun's OpenSolaris. It is used to profile time usage, memory allocations, system activity, call trace analysis, GPU performance analysis, energy logging (on iOS devices) etc. [1]
Jar Bundler[edit]
Java tool that aids in packaging an application’s component files into a single double-clickable application. Properties can be modified to optimize the code. Browser for os x 10.6.
MallocDebug[edit]
Assistance for assessing memory usage and detecting memory leaks in programs.
Assesses an application's memory usage by monitoring a user as they interact with an application, which allows MallocDebug to build a memory profile that unfortunately is limited in size.
OpenGL Driver Monitor[edit]
Real time access to the inner workings of the graphics processing unit. Runs locally or over a network using Bonjour which is less likely to interfere with the statistics it is gathering with the exception of some disk fragmentation devices.
OpenGL Profiler[edit]
This tool assists developers in debugging and optimizing OpenGL usage under macOS.
Supported features:
- Launch or attach to an application
- Breakpoints and execution control
- Error detection including thread safety checks
- Scripts
- Buffer views
- Resource viewing/editing
- Statistics gathering
- OpenGL call traces with stack traces and timings
OpenGL Shader Builder[edit]
An integrated environment to develop and debug OpenGL GPU programs (Shaders) under macOS.
Features supported by OpenGL Shader Builder:
- Realtime entry
- Preview window with shaders applied to a textured plane, sphere or teapot
- Example shaders
- Syntax checking
- Debugging and analysis of vertex / fragment programs
- Export to Xcode
One notable feature is 'Export to Xcode'. A sample Xcode project is created with C source code to initialize OpenGL (using the GLUT library) and run the shader program.
Note that this program is no longer recommended for editing GLSL shaders as 'GLSLEditorSample,' available as an example program, is generally regarded as superior.
PackageMaker[edit]
Creates application
.pkg
installer bundles for installing applications using the Installer application.Pixie[edit]
A magnifying glass application for magnifying small sections of the computer's screen, centered around the mouse cursor, giving the user a detailed view of the screen, as well as the pixel coordinates of the mouse. Provides several levels of zoom, 'locking' the image under the mouse for closer examination, and saves the magnified image one of several formats. Helps ensure visual elements are aligned precisely.
Property List Editor[edit]
Edits application preference plist files. As of Xcode 4, Property List Editor is no longer included as a separate application and all editing of plist files is done within Xcode. The last stand-alone version was version 5.3 in Xcode 3.2.6.
Quartz Composer[edit]
A visual programming language for processing and rendering data. Using OpenGL, Core Image, Core Video, and other technologies to build an API and serves as a simple visual programming paradigm. Quartz Composer is a core technology of the macOS. Quartz Composer creations work in any QuickTime-aware application (beginning with Mac OS X 10.4), from the Quartz Composer application, or embedded into Cocoa or Carbon applications.
Quartz Composer has many similarities to Max/MSP although its primary usage is for graphical rather than audio processing. Offers the ability to construct interactive video compositions that react to audio or MIDI signals and can be played from any QuickTime aware application.
Pierre-Olivier Latour originally developed the predecessor to Quartz Composer under the name PixelShox Studio.[2]
A resurgence in interest in Quartz Composer has come about, as the Facebook design team has been showcasing their utilization of the program to prototype interactions that they couldn't have otherwise depicted with flat mockups in Photoshop.[3]
Repeat After Me[edit]
Optimizes the performance of the built-in text-to-speech software for macOS. Tests the operating system's phonemic translation engine, creates graphs of the generated tone, to visually adjust the intonation, and records samples for reference.
Shark[edit]
Jar Bundler Mac
Shark is a profiler, used by software developers to optimize software programs on macOS. It samples software at set time intervals (or driven by hardware performance monitors events) taking snapshots of the stack, showing the functions which require more of the application’s resources. Includes tools to analyze the data produced by a sampling run.Since Mac OS X 10.7, it is not on the Apple site any more and was replaced by Instruments.
Spin Control[edit]
Spin Control is a performance tool used for monitoring hang activity in software programs. The program gets its name from the spinning pinwheel on macOS.[4]
Discontinued as of Xcode 4.2.
Thread Viewer[edit]
Thread Viewer is a performance tool which graphically displays activity across a range of threads. It provides color-coded time-line views of thread activity and can display backtraces of activity at specific points in time. It was merged in Instruments app, and can be accessed via 'System Trace' instrument.
Xcode[edit]
Xcode is an integrated development environment (IDE) for macOS containing a suite of software development tools developed by Apple for developing software for macOS, iOS, iPadOS, watchOS, and tvOS. Xcode supports developing source code for the programming languagesC, C++, Objective-C, Objective-C++, Java, AppleScript, Python, Ruby, ResEdit (Rez), and Swift, with a variety of programming models, including but not limited to Cocoa, Carbon, and Java.
References[edit]
- ^'Track CPU core and thread use- Instruments Help'.
- ^http://www.polhosting.info/web-archives/pixelshox_technology/Archived 2017-01-29 at the Wayback Machine PixelShox Technology
- ^'Design Prototyping with Quartz Composer'. Retrieved 13 February 2014.
- ^'Using Spin Control'.
Jar Bundler For Mac Os X 10 13 Download
External links[edit]
- Connection Tools – official site at Apple Inc.
Retrieved from 'https://en.wikipedia.org/w/index.php?title=Apple_Developer_Tools&oldid=963701139'