Goals
- Pass all appropriate certification tests for Java SE 7
- Include a complete, native Cocoa-based UI Toolkit
- Provide excellent performance
- Integrate into main-line OpenJDK 8
Minimum requirements to run
- An Intel Mac
- RAM: 2GB
- Mac OS X 10.7.3
Note that only Mac OS X 10.7 will be an Oracle-supported platform. It should continue to run on 10.6.8 + Java for Mac OS X 10.6 Update 6 but that is not guaranteed. As of 1-Jan-2012 there are no plans to introduce 10.7-only APIs into the codebase.
Prerequisites to build
- Hardware: Any 64-bit capable Intel Mac
- RAM: 4GB
- Mac OS X 10.7.3
- Xcode: 4.1 or later from the Mac App Store (free download)
- Mercurial: http://mercurial.berkwood.com/
- Jtreg: http://openjdk.java.net/jtreg/
Xcode
If you install Xcode after installing the Apple provided Java for Mac OS X, you will have to re-install the same Java for Mac OS X or a later developer preview to correct headers in the JavaRuntimeSupport framework. This issue is expected to be resolved in a future release of Xcode.
As of Xcode version 4.3 you have to manually install the Command Line Tools. This package is no more included by default. (Start Xcode, open preferences, open tab Downloads and there install the missing component.)
1. Get the code
hg clone http://hg.openjdk.java.net/jdk7u/jdk7u-dev cd jdk7u-dev chmod 755 get_source.sh ./get_source.sh
2. Build
Set the LANG environment variable if it isn't set, then run make:
$ export LANG=C # bash, ksh, etc. % setenv LANG C # csh and friends
make ALLOW_DOWNLOADS=true ALT_BOOTDIR=`/usr/libexec/java_home -v 1.7+` HOTSPOT_BUILD_JOBS=`sysctl -n hw.ncpu`
make ALLOW_DOWNLOADS=true SA_APPLE_BOOT_JAVA=true ALWAYS_PASS_TEST_GAMMA=true ALT_BOOTDIR=`/usr/libexec/java_home -v 1.6` HOTSPOT_BUILD_JOBS=`sysctl -n hw.ncpu`
- Steps for incremental building
3. Smoke Test
build/macosx-universal/j2sdk-image/bin/java -version
4. Install
mkdir -p ~/Library/Java/JavaVirtualMachines cp -R build/macosx-universal/j2sdk-bundle/1.7.0.jdk ~/Library/Java/JavaVirtualMachines
5. Run
export JAVA_HOME=`/usr/libexec/java_home --version 1.7` $JAVA_HOME/bin/java -version
If you have the Java Developer Package installed:
$JAVA_HOME/bin/java -jar /Library/Java/Demos/JFC/SwingSet2/SwingSet2.jar
On Mac OS X 10.6 use the alternate location for the SwingSet2.jar:
$JAVA_HOME/bin/java -jar /Developer/Extras/Java/JFC/SwingSet2/SwingSet2.jar
6. Test
Download jtreg to run the tests in the /jdk/test directory.
Bugs!
File new bugs at http://bugreport.sun.com/bugreport/. Please check out the bug reporting guidelines if you haven't filed against the project before.
Questions?
Please join the macosx-port-dev mailing list and ask!
See something wrong on this page? Fix it!
- Join the web-discuss@openjdk.java.net mailing list
- Send an e-mail to the web-discuss@openjdk.java.net mailing list:
- Request editor rights to the "OpenJDK Mac OS X Port" wiki
- Include your Oracle SSO Username
TL;DR
- Download an official or unofficial build
- Open /Applications/Utilities/Java Preferences.app
- Drag both "OpenJDK 7" entries to the top of the list
- Run "java -version" in /Applications/Utilities/Terminal.app