Hi guys,

After [a guy] reported that the Java 8 build was broken due to a failure in an 
Unit Test, I traced the route cause and tried to build ACS using the OpenJDK 
1.8 in my test environment. Unfortunately, it did not work due to an error when 
loading the Mockito classes :

Error: java.io.IOException: invalid constant type: 18

After that, I had a look at the Jenkins  build logs and found out the following:


[build-master-jdk18] $ 
/home/jenkins/acs/tools/hudson.tasks.Maven_MavenInstallation/maven-3.1.1/bin/mvn
 --version
Apache Maven 3.1.1 (0728685237757ffbf44136acec0402957f723d9a; 2013-09-17 
15:22:22+0000)
Maven home: 
/home/jenkins/acs/tools/hudson.tasks.Maven_MavenInstallation/maven-3.1.1
Java version: 1.7.0_75, vendor: Oracle Corporation
Java home: /usr/lib/jvm/java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "3.10.0-123.20.1.el7.x86_64", arch: "amd64", family: 
"unix"

Based on the output, we are not even using Java 8 for the build called JDK18.

Before making any assumption and sending this email, I had a look at the slave 
node with Daan and we found out that OpenJDK 1.8 is not even installed:

javac - status is auto.
 link currently points to 
/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64/bin/javac
/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64/bin/javac - 
priority 170075
 slave appletviewer: 
/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64/bin/appletviewer
 slave apt: 
/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64/bin/apt
 slave extcheck: 
/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64/bin/extcheck
 slave idlj: 
/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64/bin/idlj
 slave jar: 
/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64/bin/jar
 slave jarsigner: 
/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64/bin/jarsigner
 slave javadoc: 
/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64/bin/javadoc
 slave javah: 
/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64/bin/javah
 slave javap: 
/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64/bin/javap
 slave jcmd: 
/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64/bin/jcmd
 slave jconsole: 
/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64/bin/jconsole
 slave jdb: 
/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64/bin/jdb
 slave jhat: 
/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64/bin/jhat
 slave jinfo: 
/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64/bin/jinfo
 slave jmap: 
/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64/bin/jmap
 slave jps: 
/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64/bin/jps
 slave jrunscript: 
/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64/bin/jrunscript
 slave jsadebugd: 
/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64/bin/jsadebugd
 slave jstack: 
/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64/bin/jstack
 slave jstat: 
/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64/bin/jstat
 slave jstatd: 
/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64/bin/jstatd
 slave native2ascii: 
/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64/bin/native2ascii
 slave policytool: 
/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64/bin/policytool
 slave rmic: 
/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64/bin/rmic
 slave schemagen: 
/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64/bin/schemagen
 slave serialver: 
/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64/bin/serialver
 slave wsgen: 
/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64/bin/wsgen
 slave wsimport: 
/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64/bin/wsimport
 slave xjc: 
/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64/bin/xjc
 slave java_sdk_exports: 
/usr/lib/jvm-exports/java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64
 slave java_sdk: /usr/lib/jvm/java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64
 slave appletviewer.1.gz: 
/usr/share/man/man1/appletviewer-java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64.1.gz
 slave apt.1.gz: 
/usr/share/man/man1/apt-java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64.1.gz
 slave extcheck.1.gz: 
/usr/share/man/man1/extcheck-java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64.1.gz
 slave jar.1.gz: 
/usr/share/man/man1/jar-java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64.1.gz
 slave jarsigner.1.gz: 
/usr/share/man/man1/jarsigner-java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64.1.gz
 slave javac.1.gz: 
/usr/share/man/man1/javac-java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64.1.gz
 slave javadoc.1.gz: 
/usr/share/man/man1/javadoc-java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64.1.gz
 slave javah.1.gz: 
/usr/share/man/man1/javah-java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64.1.gz
 slave javap.1.gz: 
/usr/share/man/man1/javap-java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64.1.gz
 slave jconsole.1.gz: 
/usr/share/man/man1/jconsole-java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64.1.gz
 slave jdb.1.gz: 
/usr/share/man/man1/jdb-java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64.1.gz
 slave jhat.1.gz: 
/usr/share/man/man1/jhat-java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64.1.gz
 slave jinfo.1.gz: 
/usr/share/man/man1/jinfo-java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64.1.gz
 slave jmap.1.gz: 
/usr/share/man/man1/jmap-java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64.1.gz
 slave jps.1.gz: 
/usr/share/man/man1/jps-java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64.1.gz
 slave jrunscript.1.gz: 
/usr/share/man/man1/jrunscript-java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64.1.gz
 slave jsadebugd.1.gz: 
/usr/share/man/man1/jsadebugd-java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64.1.gz
 slave jstack.1.gz: 
/usr/share/man/man1/jstack-java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64.1.gz
 slave jstat.1.gz: 
/usr/share/man/man1/jstat-java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64.1.gz
 slave jstatd.1.gz: 
/usr/share/man/man1/jstatd-java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64.1.gz
 slave native2ascii.1.gz: 
/usr/share/man/man1/native2ascii-java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64.1.gz
 slave policytool.1.gz: 
/usr/share/man/man1/policytool-java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64.1.gz
 slave rmic.1.gz: 
/usr/share/man/man1/rmic-java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64.1.gz
 slave schemagen.1.gz: 
/usr/share/man/man1/schemagen-java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64.1.gz
 slave serialver.1.gz: 
/usr/share/man/man1/serialver-java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64.1.gz
 slave wsgen.1.gz: 
/usr/share/man/man1/wsgen-java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64.1.gz
 slave wsimport.1.gz: 
/usr/share/man/man1/wsimport-java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64.1.gz
 slave xjc.1.gz: 
/usr/share/man/man1/xjc-java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64.1.gz
Current `best' version is 
/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64/bin/javac.

I will push the fix I did on the test, which now uses a mock path instead of 
/bin/bash.

Concerning the slave node, could someone have a look at that?

Cheers,
Wilder

Reply via email to