JarBundler
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. Project moved from http://sourceforge.net/projects/jarbundler/
Install / Use
/learn @onexip/JarBundlerREADME
JarBundler
JarBundler is a feature-rich Ant task which will create a macOS application bundle from a list of Jar files and a main class name.
You can add an icon resource, set various macOS native look-and-feel bells and whistles, and maintain your application bundles as part of your normal build and release cycle.
Project moved from http://sourceforge.net/projects/jarbundler/
Releases
Maven
Add the following dependency to your pom.xml file:
<dependency>
<groupId>com.ultramixer.jarbundler</groupId>
<artifactId>jarbundler-core</artifactId>
<version>3.3.0</version>
</dependency>
Download
Check the Releases page to get the latest distribution.
Documentation
Take a look at ./docs/index.html (Currently outdated. Sorry.)
Build
Run mvn clean install to build the project and push the JAR artifacts to your local maven repo. You can then use the SNAPSHOT version in your project.
To skip the GPG signing process (for maven central release) add -Dgpg.skip to your commandline.
ChangeLog
Version 3.4.0 (Work In Progress)
- Massive code refactoring
- code formatting
- specify maven source encoding
- fix Ant build files
- run examples with a modern JavaApplicationStub (universalJavaApplicationStub)
- Updates to docs and examples
- Optional
supportsAutomaticGraphicsSwitchingattribute which defaults totrue(for Plist keyNSSupportsAutomaticGraphicsSwitching)- PullRequest !14, thanks to Björn Kautler (@Vampire) for his contribution!
- Update Ant from 1.9.3 to 1.9.14
- Bugfix: JarBundler on Windows created a classpath with backward slashes which broke the Info.plist file on macOS
\in classpath are now replaced with/
- Remove support for Java 1.3
- if no
jvmversionattribute is set, the default version is now1.4+ - removed deprecated
growboxintrudesattribute - removed deprecated
liveresizeattribute - removed deprecated
smalltabsattribute
- if no
- Updated HelloWorld example to show JVM details, classpath and mainArgs
- Support for Java 9+ in
jvmversionattribute
Version 3.3.0 (2015-11-09)
- Merged changes from tofi86/Jarbundler into official release
- optional
contentSizeattribute (for Plist keyNSPreferencesContentSize) - optional
useJavaXKeyattribute (for universalJavaApplicationStub support) - optional
allowmixedlocalizationsattribute (for Plist keyCFBundleAllowMixedLocalizations) - optional
copyrightattribute (for Plist keyNSHumanReadableCopyright) - removed deprecated
aboutmenunameattribute (useshortnameattribute instead) - removed deprecated
infostringandshortinfostringattributes (usecopyrightattribute instead)
- optional
Version 3.2.0 (2015-08-05)
- optional
highResolutionCapableattribute (for Plist keyNSHighResolutionCapable) - optional
LSApplicationCategoryTypeattribute (for Plist keyLSApplicationCategoryType) - optional
SUPublicDSAKeyFileattribute (for Plist keySUPublicDSAKeyFile)
Previous history
Take a look at ./docs/index.html
License
Licensed under Apache License v2.0.
