[JIRA] (JENKINS-40810) UnsupportedClassVersionError when using JDK6

14 views
Skip to first unread message

rmpestano@gmail.com (JIRA)

unread,
Jan 4, 2017, 2:55:02 PM1/4/17
to jenkinsc...@googlegroups.com
Rafael Pestano created an issue
 
Jenkins / Bug JENKINS-40810
UnsupportedClassVersionError when using JDK6
Issue Type: Bug Bug
Assignee: Unassigned
Components: remoting
Created: 2017/Jan/04 7:54 PM
Labels: jenkins
Priority: Minor Minor
Reporter: Rafael Pestano

Hi Guys,

we recently upgraded our jenkins from 2.19.4 LTS to 2.32.1 LTS and we are facing an issue in jobs using JDK 6.

If I run in master the exception below occours but the job succeds:

Established TCP socket on 43500
[spj-deploy-fabrica] $ /opt/jenkins-java/jdk1.6/bin/java -Duser.timezone=GMT-03:00 -Djavax.net.ssl.trustStore=/opt/security/cacert.jks -Djavax.net.ssl.trustStorePassword=jb05%c@c3rtP@5%w0rd -cp /var/procergs/build-tools/jenkins/plugins/maven-plugin/WEB-INF/lib/maven32-agent-1.8.1.jar:/opt/apache-maven-3/boot/plexus-classworlds-2.5.1.jar:/opt/apache-maven-3/conf/logging jenkins.maven3.agent.Maven32Main /opt/apache-maven-3 /opt/jboss-eap-7.0/domain/servers/JENKINS/tmp/vfs/temp/temp2beba3780575b554/content-1dac40c08d58316e/WEB-INF/lib/remoting-3.2.jar /var/procergs/build-tools/jenkins/plugins/maven-plugin/WEB-INF/lib/maven32-interceptor-1.8.1.jar /var/procergs/build-tools/jenkins/plugins/maven-plugin/WEB-INF/lib/maven3-interceptor-commons-1.8.1.jar 43500
Exception in thread "main" java.lang.UnsupportedClassVersionError: hudson/remoting/Launcher : Unsupported major.minor version 51.0
	at java.lang.ClassLoader.defineClass1(Native Method)
	at java.lang.ClassLoader.defineClassCond(ClassLoader.java:631)
	at java.lang.ClassLoader.defineClass(ClassLoader.java:615)
	at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)
	at java.net.URLClassLoader.defineClass(URLClassLoader.java:283)
	at java.net.URLClassLoader.access$000(URLClassLoader.java:58)
	at java.net.URLClassLoader$1.run(URLClassLoader.java:197)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
	at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClassFromSelf(ClassRealm.java:389)
	at org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy.loadClass(SelfFirstStrategy.java:42)
	at org.codehaus.plexus.classworlds.realm.ClassRealm.unsynchronizedLoadClass(ClassRealm.java:259)
	at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:242)
	at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:227)
	at jenkins.maven3.agent.Maven32Main.main(Maven32Main.java:143)
	at jenkins.maven3.agent.Maven32Main.main(Maven32Main.java:74)
ERROR: ================================================================================
ERROR: Invalid project setup: Connection reset
ERROR: [JENKINS-18403][JENKINS-28294] JDK 'jdk1.6.0_27' not supported to run Maven projects.
ERROR: Maven projects have to be launched with a Java version greater or equal to the minimum version required by the master.
ERROR: Use the Maven JDK Toolchains (plugin) to build your maven project with an older JDK.
ERROR: Retrying with slave Java and setting compile/test properties to point to /opt/jenkins-java/jdk1.6.
ERROR: ================================================================================
Established TCP socket on 48365
[spj-deploy-fabrica] $ /opt/java/jdk1.8.0_91/jre/bin/java -Duser.timezone=GMT-03:00 -Djavax.net.ssl.trustStore=/opt/security/cacert.jks -Djavax.net.ssl.trustStorePassword=jb05%c@c3rtP@5%w0rd -cp /var/procergs/build-tools/jenkins/plugins/maven-plugin/WEB-INF/lib/maven32-agent-1.8.1.jar:/opt/apache-maven-3/boot/plexus-classworlds-2.5.1.jar:/opt/apache-maven-3/conf/logging jenkins.maven3.agent.Maven32Main /opt/apache-maven-3 /opt/jboss-eap-7.0/domain/servers/JENKINS/tmp/vfs/temp/temp2beba3780575b554/content-1dac40c08d58316e/WEB-INF/lib/remoting-3.2.jar /var/procergs/build-tools/jenkins/plugins/maven-plugin/WEB-INF/lib/maven32-interceptor-1.8.1.jar /var/procergs/build-tools/jenkins/plugins/maven-plugin/WEB-INF/lib/maven3-interceptor-commons-1.8.1.jar 48365
<===[JENKINS REMOTING CAPACITY]===>channel started

But when it runs on a slave it fails:

Established TCP socket on 41401
maven32-agent.jar already up to date
maven32-interceptor.jar already up to date
maven3-interceptor-commons.jar already up to date
[spj-deploy-fabrica] $ /opt/jenkins-java/jdk1.6/bin/java -Duser.timezone=GMT-03:00 -Djavax.net.ssl.trustStore=/opt/security/cacert.jks -Djavax.net.ssl.trustStorePassword=jb05%c@c3rtP@5%w0rd -cp /home/procergs/jboss/jenkins-slave/maven32-agent.jar:/opt/apache-maven-3/boot/plexus-classworlds-2.5.1.jar:/opt/apache-maven-3/conf/logging jenkins.maven3.agent.Maven32Main /opt/apache-maven-3 /home/procergs/jboss/jenkins-slave/slave.jar /home/procergs/jboss/jenkins-slave/maven32-interceptor.jar /home/procergs/jboss/jenkins-slave/maven3-interceptor-commons.jar 41401
Exception in thread "main" java.lang.UnsupportedClassVersionError: hudson/remoting/Launcher : Unsupported major.minor version 51.0
	at java.lang.ClassLoader.defineClass1(Native Method)
	at java.lang.ClassLoader.defineClassCond(ClassLoader.java:631)
	at java.lang.ClassLoader.defineClass(ClassLoader.java:615)
	at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)
	at java.net.URLClassLoader.defineClass(URLClassLoader.java:283)
	at java.net.URLClassLoader.access$000(URLClassLoader.java:58)
	at java.net.URLClassLoader$1.run(URLClassLoader.java:197)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
	at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClassFromSelf(ClassRealm.java:389)
	at org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy.loadClass(SelfFirstStrategy.java:42)
	at org.codehaus.plexus.classworlds.realm.ClassRealm.unsynchronizedLoadClass(ClassRealm.java:259)
	at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:242)
	at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:227)
	at jenkins.maven3.agent.Maven32Main.main(Maven32Main.java:143)
	at jenkins.maven3.agent.Maven32Main.main(Maven32Main.java:74)
[spj-deploy-fabrica] $ /bin/sh -xe /tmp/hudson4749605600898410228.sh
+ cp spj-ear/target/spj.ear /weblogic/beades/user_projects/domains//dom_xpj_004_w10/autodeploy
cp: cannot stat 'spj-ear/target/spj.ear': No such file or directory
Build step 'Executar shell' marked build as failure
ERROR: Falhou ao analisar POMs
java.io.EOFException: unexpected stream termination
	at hudson.remoting.ChannelBuilder.negotiate(ChannelBuilder.java:365)
	at hudson.remoting.ChannelBuilder.build(ChannelBuilder.java:310)
	at hudson.slaves.Channels.forProcess(Channels.java:115)
	at hudson.maven.AbstractMavenProcessFactory.newProcess(AbstractMavenProcessFactory.java:294)
	at hudson.maven.ProcessCache.get(ProcessCache.java:236)
	at hudson.maven.MavenModuleSetBuild$MavenModuleSetBuildExecution.doRun(MavenModuleSetBuild.java:798)
	at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:534)
	at hudson.model.Run.execute(Run.java:1728)
	at hudson.maven.MavenModuleSetBuild.run(MavenModuleSetBuild.java:544)
	at hudson.model.ResourceController.execute(ResourceController.java:98)
	at hudson.model.Executor.run(Executor.java:404)
Started calculate disk usage of build
Finished Calculation of disk usage of build in 0 seconds
Started calculate disk usage of workspace
Finished Calculation of disk usage of workspace in  2 second
Finished: FAILURE

I don't know if it is related but there was a recent change in remoting in 2.27 (see JENKINS-37565)

Add Comment Add Comment
 
This message was sent by Atlassian JIRA (v7.1.7#71011-sha1:2526d7c)
Atlassian logo

rmpestano@gmail.com (JIRA)

unread,
Jan 5, 2017, 5:45:01 AM1/5/17
to jenkinsc...@googlegroups.com
Rafael Pestano closed an issue as Fixed
 

User error, the slave cannot access a file to execute a shell copy:

cp: cannot stat 'spj-ear/target/spj.ear': No such file or directory

The only strange thing is the UnsupportedClassVersionError.

Change By: Rafael Pestano
Status: Open Closed
Resolution: Fixed

rmpestano@gmail.com (JIRA)

unread,
Jan 5, 2017, 5:46:01 AM1/5/17
to jenkinsc...@googlegroups.com
User error, the slave cannot access a file to execute a shell copy:

cp: cannot stat 'spj-ear/target/spj.ear': No such file or directory


The only strange thing is the UnsupportedClassVersionError but it doesn't affect job execution .  

rmpestano@gmail.com (JIRA)

unread,
Jan 5, 2017, 6:32:02 AM1/5/17
to jenkinsc...@googlegroups.com
Rafael Pestano reopened an issue
 

What we noticed is that the build phase is skiped on slave and that's why we got a 'No such file or directory' because the binaries are generated at 'build' phase which was skipped (only on slave).

Any hints?

Change By: Rafael Pestano
Resolution: Fixed
Status: Closed Reopened

rmpestano@gmail.com (JIRA)

unread,
Jan 5, 2017, 6:34:01 AM1/5/17
to jenkinsc...@googlegroups.com
Rafael Pestano edited a comment on Bug JENKINS-40810
What we noticed is that the *build* phase is skiped skipped on slave and that's why we got a 'No such file or directory' (the shell script runs on a post step that is marked as 'run only if build succeds') because the binaries are generated at 'build' phase which was skipped (only on slave).

Any hints?

dbeck@cloudbees.com (JIRA)

unread,
Jan 5, 2017, 8:07:01 AM1/5/17
to jenkinsc...@googlegroups.com

I recommend you change your trust store password. You've published it above.

JDK 6 is no longer supported for Maven projects as the error message clearly indicates. Use toolchains to build on JDK 6 and older instead.

Oleg Nenashev Could you confirm what I'm writing here?

o.v.nenashev@gmail.com (JIRA)

unread,
Jan 5, 2017, 9:20:02 AM1/5/17
to jenkinsc...@googlegroups.com
Oleg Nenashev updated an issue
Change By: Oleg Nenashev
Labels: jenkins remoting remoting3

o.v.nenashev@gmail.com (JIRA)

unread,
Jan 5, 2017, 9:20:02 AM1/5/17
to jenkinsc...@googlegroups.com
Oleg Nenashev updated an issue

o.v.nenashev@gmail.com (JIRA)

unread,
Jan 5, 2017, 9:20:02 AM1/5/17
to jenkinsc...@googlegroups.com

Yes, Java 6 is no longer supported in Remoting since 3.0. It impacts all Remoting-dependent plugins including Maven Project Plugin.

Jenkins core does not support JDK6 since 1.610, so it was just a question of time when the Maven project plugin fails.

Maybe it worth mentioning it in the Maven Project Plugin Wiki.

rmpestano@gmail.com (JIRA)

unread,
Jan 5, 2017, 9:45:01 AM1/5/17
to jenkinsc...@googlegroups.com
Rafael Pestano resolved as Fixed
 

Ok, thank you guys for the info.

Change By: Rafael Pestano
Status: Reopened Resolved
Resolution: Fixed

dbeck@cloudbees.com (JIRA)

unread,
Jan 17, 2017, 6:55:03 PM1/17/17
to jenkinsc...@googlegroups.com

scm_issue_link@java.net (JIRA)

unread,
Jan 18, 2017, 9:47:04 PM1/18/17
to jenkinsc...@googlegroups.com

Code changed in jenkins
User: Daniel Beck
Path:
content/changelog-stable/index.html
http://jenkins-ci.org/commit/jenkins.io/39718b18cb7c201a6ce6d37b541e7736c3b8fc2b
Log:
JENKINS-40810 Make Java requirement explicit

scm_issue_link@java.net (JIRA)

unread,
Jan 18, 2017, 9:47:04 PM1/18/17
to jenkinsc...@googlegroups.com

Code changed in jenkins
User: Daniel Beck
Path:
content/changelog-stable/index.html

content/doc/upgrade-guide/2.32.adoc
http://jenkins-ci.org/commit/jenkins.io/1692ba554089a4281a8407372a51af5c3ef19db6
Log:
JENKINS-40810 Mention effect of Remoting 3 on Maven builds

scm_issue_link@java.net (JIRA)

unread,
Jan 18, 2017, 9:47:04 PM1/18/17
to jenkinsc...@googlegroups.com

Code changed in jenkins
User: R. Tyler Croy
Path:
content/changelog-stable/index.html
content/doc/upgrade-guide/2.32.adoc
http://jenkins-ci.org/commit/jenkins.io/7dc33503c5af2c7be284927e78ca2d3c9870761b
Log:
Merge pull request #554 from daniel-beck/JENKINS-40810

JENKINS-40810 Mention effect of Remoting 3 on Maven builds

aheritier@apache.org (JIRA)

unread,
Jan 30, 2017, 2:57:06 AM1/30/17
to jenkinsc...@googlegroups.com
Arnaud Héritier resolved as Fixed
Change By: Arnaud Héritier
Status: Reopened Resolved
Resolution: Fixed

aheritier@apache.org (JIRA)

unread,
Jan 30, 2017, 2:57:06 AM1/30/17
to jenkinsc...@googlegroups.com
Arnaud Héritier reopened an issue
Change By: Arnaud Héritier
Resolution: Fixed
Status: Resolved Reopened
Reply all
Reply to author
Forward
0 new messages