Opened 7 years ago
Closed 6 years ago
#56000 closed enhancement (fixed)
Install Java on the buildbot workers
Reported by: | ryandesign (Ryan Carsten Schmidt) | Owned by: | admin@… |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | server/hosting | Version: | |
Keywords: | Cc: | amake (Aaron Madlon-Kay), ctreleaven (Craig Treleaven) | |
Port: |
Description
As discussed on the list, I need to install Java on the Lion and later buildbot workers, specifically Apple Java 6 and Oracle Java 7 and 8. See #42396 for prior discussion re the macOS forge buildbot. Later, the java portgroup may need modifications to allow ports to specify which Java version they need.
Change History (7)
comment:1 Changed 7 years ago by ctreleaven (Craig Treleaven)
comment:2 Changed 7 years ago by ryandesign (Ryan Carsten Schmidt)
Cc: | amake added |
---|
I wasn't sure if I should use the "Java for OS X" from the public Apple downloads site that you linked to (which installs only /Library/Java/JavaVirtualMachines/1.6.0.jdk), or the "Java for OS X Developer Package" from Apple Developer Downloads (which installs /Library/Java/JavaVirtualMachines/1.6.0_65-b14-462.jdk and lots of other files including demos, documentation, private frameworks, ...)
comment:3 Changed 6 years ago by ryandesign (Ryan Carsten Schmidt)
Cc: | ctreleaven added |
---|
I have installed Java for OS X 2017-001 on the Mountain Lion and later buildbot workers.
Despite claiming to support Lion, Java for OS X 2017-001 does not work on Lion:
$ java -version dyld: lazy symbol binding failed: Symbol not found: _JRSCopyOSJavaSupportVersion Referenced from: /Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Libraries/libjava.jnilib Expected in: /System/Library/Frameworks/JavaVM.framework/Versions/A/Frameworks/JavaRuntimeSupport.framework/Versions/A/JavaRuntimeSupport dyld: Symbol not found: _JRSCopyOSJavaSupportVersion Referenced from: /Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Libraries/libjava.jnilib Expected in: /System/Library/Frameworks/JavaVM.framework/Versions/A/Frameworks/JavaRuntimeSupport.framework/Versions/A/JavaRuntimeSupport
I reported the bug to Apple and installed Java for OS X 2015-001 on the Lion workers instead.
I also installed Oracle JDK 8u181 on the Lion and later workers.
I did not install Oracle JDK 7, 9, or 10, as they're already end-of-life. Oracle JDK 11 is a long-term-support release so we could install that, but maybe we should live with 8 for awhile first.
comment:4 Changed 6 years ago by ryandesign (Ryan Carsten Schmidt)
I have updated Oracle JDK 8 to 8u191 on the Lion and later workers.
For the open-source versions of Oracle JDK 10 and 11 we now have the openjdk10 and openjdk11 ports. From what I can tell, nothing in MacPorts uses these yet.
comment:5 Changed 6 years ago by mattbishop (Matt Bishop)
Is the env var $JAVA_HOME being set? I am failing to read it in tomcat-native port. Here is that PR: https://github.com/macports/macports-ports/pull/3680
It could be being set but not read correctly. Here is my portfile's code to read this var:
if {[info exists env(JAVA_HOME)]} { configure.args-append --with-java-home="$env(JAVA_HOME)" }
comment:6 Changed 6 years ago by mattbishop (Matt Bishop)
I adopted this java PortGroup in the above PR and it works well. Thanks!
comment:7 Changed 6 years ago by ryandesign (Ryan Carsten Schmidt)
Resolution: | → fixed |
---|---|
Status: | new → closed |
Since this ticket was about installing Java on the buildbot workers, and that's been done, I'm closing it.
Apple's Java 6 for OS X is available at:
https://support.apple.com/kb/DL1572?locale=en_US
"Java for macOS 2017-001 installs the legacy Java 6 runtime for macOS 10.13 High Sierra, macOS 10.12 Sierra, macOS 10.11 El Capitan, macOS 10.10 Yosemite, macOS 10.9 Mavericks, macOS 10.8 Mountain Lion, and macOS 10.7 Lion."
The lack of Java 6 on the 10.7+ buildbots is preventing openNI from building and will prevent libpcl when it is updated. OpenNI apparently doesn't work with Java 8 as I had that installed previously. (I think Java 6 is only used during the build but I'm not certain.)