OpenJDK 7 for PPC Macs under OS X 10.5?

Mike Swingler swingler at apple.com
Sun Apr 17 07:19:26 PDT 2011


On Apr 17, 2011, at 3:22 AM, Bill Connelly wrote:

> Can you tell me if this is valid today? If this is not the proper Forum for this question, can you point me to one that is? Thanks.
> 
> I was hoping for a version of Java greater than 1.5 for my PPC Mac (A Digital Audio Dual 533 G4 running Leopard 10.5.8).
> 
> I found this version of OpenJDK 1.7 which they say is for PPC Macs:
> 
> 32-bit OpenJDK 7 Beta 1 for Mac OS X 10.5 PowerPC (Beta Release): openjdk7-macppc-2009-12-16-b4.tar.bz2
> 
> on http://landonf.bikemonkey.org/static/soylatte/
> 
> And this is what I get as echo $PATH and java -version in Terminal, after downloading, decompressing, placing it in my Users Library, and adding it to my PATH:
> 
> Acoustic-Piano-Mac-3:~ moonstoneartstudio$ echo $PATH
> /opt/local/bin:/opt/local/sbin:/Users/moonstoneartstudio/Library/openjdk7-macppc-2009-12-16-b4/bin:/sw/bin:/sw/sbin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin
> 
> 
> Acoustic-Piano-Mac-3:~ moonstoneartstudio$ java -version
> openjdk version "1.7.0-internal"
> OpenJDK Runtime Environment (build 1.7.0-internal-landonf_2009_12_16_12_54-b00)
> OpenJDK Zero VM (build 17.0-b05, interpreted mode)
> 
> But it doesn't show up in the Java Preferences.app window ... just 1.5 and 1.4, and when I try to run an application requiring Java, such as PS3 Media Server, it still says there's no Java version >= 1.6.

This is because that version of Java is not a .jdk bundle which advertises it's capabilities via an Info.plist. The way that Java Preferences (and it's companion /usr/libexec/java_home) works is that is scans the */Library/Java/JavaVirtualMachines paths for .jdk bundles and then applications use the top listing that matches the required architecture, version, and capabilities checks.

It is also unlikely that that particular distribution will be sufficient for anything except command-line level tools. That particular Java distribution only uses X11 for it's graphics stack, and no OpenJDK version currently has eAWT API in it to support bundled Mac Java applications. The Apple-provided JDKs provide 5 capabilities: CommandLine, JNI, BundledApp, Applets, and WebStart - we plan to bring macosx-port of OpenJDK to the same level, but it is long hard work, and generally requires new API that only exists in 10.6+.

> Know what I'm missing? It's a Developer package, and hasn't been turned on, even though its in the PATH?

Just because something is slammed onto the path of a shell which is a child process of Terminal doesn't mean that anything in the graphical system of Mac OS X will pay attention to it. ;-)

> I did try a Safe Boot and Restart to rebuild caches to no avail.

Regards,
Mike Swingler
Java Engineering
Apple Inc.



More information about the macosx-port-dev mailing list