hg: macosx-port/macosx-port/jdk: Initial cut of a the .jre/.jdk loading JavaAppLauncher template.
swingler at apple.com
Thu Sep 29 20:21:22 PDT 2011
On Sep 29, 2011, at 7:57 PM, swingler at apple.com wrote:
> Changeset: 0f009e00361d
> Author: swingler at apple.com
> Date: 2011-09-29 19:56 -0700
> URL: http://hg.openjdk.java.net/macosx-port/macosx-port/jdk/rev/0f009e00361d
> Initial cut of a the .jre/.jdk loading JavaAppLauncher template.
> + src/macosx/bundle/JavaAppLauncher/JavaAppLauncher.xcodeproj/project.pbxproj
> + src/macosx/bundle/JavaAppLauncher/resources/English.lproj/InfoPlist.strings
> + src/macosx/bundle/JavaAppLauncher/resources/JavaAppLauncher-Info.plist
> + src/macosx/bundle/JavaAppLauncher/src/JVMArgs.h
> + src/macosx/bundle/JavaAppLauncher/src/JVMArgs.m
> + src/macosx/bundle/JavaAppLauncher/src/JavaAppLauncher.h
> + src/macosx/bundle/JavaAppLauncher/src/JavaAppLauncher.m
> + src/macosx/bundle/JavaAppLauncher/src/JavaAppLauncher_Prefix.pch
> + src/macosx/bundle/JavaAppLauncher/src/main.m
This check-in provides a JavaAppLauncher project that creates a shell .app bundle, copies in a 1.7.0.jre (or optionally, 1.7.0.jdk) into it's Contents/PlugIns directory, and uses the Info.plist to initialize the JVM and call into a launcher which invokes the app's specified main().
Right now, this launcher and project file only exist in the source, and don't produce any artifacts in the build output.
What we are looking for now are some ideas how to provide this technology in an easy to use format for the app developers in the OpenJDK community. How would you like make/use/invoke/build this stuff into/around your own apps? Should we build an .app shell as part of the jdk build output? Is the project file on it's own sufficient? Should there be a build.xml in the .jdk bundle that your IDE should invoke with the Info.plist details passed as parameters? Let us know what works best for you!
More information about the macosx-port-dev