run-generator jobj build step not processing symbolic links to jawt.h

Stephen Bannasch stephen.bannasch at deanbrook.org
Mon Apr 4 13:10:07 PDT 2011


The problem was caused by not manually installing a new Java for Mac OSX Developer Package after updating Java with the standard system software update.

After deleting the older Java for Mac OSX Developer Package and installing the latest Developer Package the build completes.

At 2:34 PM -0800 11/15/10, Mike Swingler wrote:
>As of Java for Mac OS X 10.6 Update 3 and 10.5 Update 8, we have moved to a model where the "developer" JVMs in /Library will stick around, even if a newer system JVM is installed via Software Update. This model allows developers to install multiple developer previews side-by-side, and still have a GM-quality system JVM that is left untouched.
>
>Unfortunately, the src.jar and docs.jar content has always been too large to justify shipping it to tens of millions of Mac users at a time, so we have always required that Java developers who want this content have to install a developer package.Previously, the documentation installer would just inline the jars into the system JVM, and would be out-of-sync when the nextsoftware update arrived. What this new model gains us is that the src.jar and docs.jar files will never be out of sync with the JVM they are installed in, but it also means the system JVM will never have them either.

Would be a nice touch when the standard system Java was updated the install script looked first to see if a developer package was installed and after updating the system Java and displayed a notice that the Developer Package was now out-of-date.

This was an annoying bug to track down.

-------- more details --------

This is what I had installed when I was having problems executing the JObjC run-generator:

[dev]$ /usr/libexec/java_home --verbose
Matching Java Virtual Machines (4):
    1.6.0_24-b07-334, x86_64:	"Java SE 6"	/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
    1.6.0_24-b07-334, i386:	"Java SE 6"	/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
    1.6.0_22-b04-307, x86_64:	"Java SE 6"	/Library/Java/JavaVirtualMachines/1.6.0_22-b04-307.jdk/Contents/Home
    1.6.0_22-b04-307, i386:	"Java SE 6"	/Library/Java/JavaVirtualMachines/1.6.0_22-b04-307.jdk/Contents/Home

I deleted /Library/Java/JavaVirtualMachines/1.6.0_22-b04-307.jdk and then downloaded and installed:

  Java for Mac OS X 10.6 Update 4 Developer Package
  https://connect.apple.com/cgi-bin/WebObjects/MemberSite.woa/wa/getSoftware?bundleID=20719

Now my standard installed Java's look like this:

$ /usr/libexec/java_home --verbose
Matching Java Virtual Machines (4):
    1.6.0_24-b07-334, x86_64:	"Java SE 6"	/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
    1.6.0_24-b07-334, i386:	"Java SE 6"	/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
    1.6.0_24-b07-334, x86_64:	"Java SE 6"	/Library/Java/JavaVirtualMachines/1.6.0_24-b07-334.jdk/Contents/Home
    1.6.0_24-b07-334, i386:	"Java SE 6"	/Library/Java/JavaVirtualMachines/1.6.0_24-b07-334.jdk/Contents/Home

Now the jni headers are no longer symbolic links:

$ ls -als /System/Library/Frameworks/JavaVM.framework/Headers/
total 56
 0 drwxr-xr-x  14 root  wheel    476 Apr  4 15:16 .
 0 drwxr-xr-x  10 root  wheel    340 Apr  4 15:16 ..
 0 -rw-r--r--   1 root  wheel    472 Feb 21 19:45 AWTCocoaComponent.h
 0 -rw-r--r--   1 root  wheel   1708 Feb 21 19:45 JDWP.h
 0 -rw-r--r--   1 root  wheel  11217 Feb 21 19:45 JDWPCommands.h
 0 -rw-r--r--   1 root  wheel    179 Feb 21 19:45 JavaVM.h
 0 -rw-r--r--   1 root  wheel   2390 Feb 21 19:45 NSJavaConfiguration.h
 0 -rw-r--r--   1 root  wheel   2060 Feb 21 19:45 NSJavaVirtualMachine.h
 0 -rw-r--r--   1 root  wheel   8498 Feb 21 19:45 jawt.h
 0 -rw-r--r--   1 root  wheel   1987 Feb 21 19:45 jawt_md.h
 0 -rw-r--r--   1 root  wheel   5926 Feb 21 19:45 jdwpTransport.h
24 -rw-r--r--   1 root  wheel  68336 Feb 21 19:45 jni.h
 0 -rw-r--r--   1 root  wheel    507 Feb 21 19:45 jni_md.h
32 -rw-r--r--   1 root  wheel  77539 Feb 21 19:45 jvmti.h



More information about the macosx-port-dev mailing list