- 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
- DONE. OS X is now 'just another platform' in 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.3 and higher will be an Oracle-supported platform. It should continue to run on 10.6.8+ but that is not guaranteed. As of 1-Jan-2012 there are no plans to introduce 10.7-only APIs into the codebase.
- Hardware: Any 64-bit capable Intel Mac
- Minimum OS version: Mac OS X 10.6, run Software Update to get to at least 10.6.57.3 Lion
- Xcode Command Line Tools
- Mercurial: Xcode: 3.2.5 or later from http://developermercurial.appleberkwood.com (Mac Dev Center section)Java: "Java for Mac /
- X11
- On OS X 10.8 Mountain Lion: XQuartz
- On OS X 10.
6 Update 3 Developer Package" or later from http://connect.apple.com (Java section)- 7 Lion: Run /Applications/Utilities/X11.app to install as an additional download
JTReg is not required to build but useful for running regression tests
Setup
...
Code Block |
---|
cd /tmp
hg clone http://bitbucket.org/pmezard/hgforest-crew/
cp hgforest-crew/forest.py ~/.forest.py
|
Add the following lines to your: ~/.hgrc
Code Block |
---|
[extensions]
hgext.forest=~/.forest.py
|
Source
Code Block |
---|
hg fclone http://hg.openjdk.java.net/macosx-port/macosx-port
|
Build
hg.openjdk.java.net/jdk8/jdk8
cd jdk8
chmod 755 get_source.sh
./get_source.sh
|
2. Build
Code Block |
---|
title | Java 7 or higher installed |
---|
|
CPATH="/usr/X11/include" LANG=C make ALLOW_DOWNLOADS=true ALT_BOOTDIR=`/usr/libexec/java_home -v 1.7+` HOTSPOT_BUILD_JOBS=`sysctl -n hw.ncpu`
|
Code Block |
---|
title | Using Apple's Java 6 |
---|
|
CPATH="/usr/X11/include" LANG=C make |
Code Block |
---|
CC=/Developer/usr/bin/llvm-gcc-4.2 CXX=/Developer/usr/bin/llvm-g++-4.2 ALLOW_DOWNLOADS=true SA_APPLE_BOOT_JAVA=true ALWAYS_PASS_TEST_GAMMA=true ALT_BOOTDIR=`/usr/libexec/java_home -v 1.6` make
HOTSPOT_BUILD_JOBS=`sysctl -n hw.ncpu`
|
* Steps for incremental building
3. Smoke Test
Code Block |
---|
build/macosx-universal/j2sdk-image/bin/java -version
|
Code Block |
---|
mkdir -p ~/Library/Java/JavaVirtualMachines
cp -R build/macosx-universal/j2sdk-bundle/1jdk1.7.0.jdk ~/Library/Java/JavaVirtualMachines
|
Panel |
---|
The "1.7.8.0.jdk " bundle can be copied or symlinked to ~/Library/Java/JavaVirtualMachines or /Library/Java/JavaVirtualMachines.Once installed, the build will be discovered by /Applications/Utilities/Java Preferences.app, and found using the /usr/libexec/java_home tool, when passing it "--version 1.7". By dragging the 1.7.0 version to the top of the Java Preferences lists, it will become the default JVM for command line use (since CommandLine is currently the only capability it supports).
|
5. Run
Code Block |
---|
export JAVA_HOME=`/usr/libexec/java_home home --version 1.7`7+`
$JAVA_HOME/bin/java -version
|
If you have the Java Developer Package installed:
Code Block |
---|
$JAVA_HOME/bin/java -jar /Library/Java/Demos/JFC/SwingSet2/SwingSet2.jar
|
The linux jtreg is just a shell script that runs fine on Mac OS X. It will run all the tests under $SRCDownload jtreg to run the tests in the /jdk/test directory.
Code Block |
---|
cd $SRC/jdk/
(path to jtreg)/linux/bin/jtreg .
|
Caveats
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
If your version of Xcode is older than 3.2.5, the 32-bit build won't run, but the 64-bit build will.