使用Maven 3.0和Jenkins 2.1XX构建Java 6项目:不支持的major.minor版本51.0

时间:2018-04-25 10:04:29

标签: java maven jenkins

我是Jenkins的新手,我目前正在本地服务器上设置一些自动构建。一半的项目使用JDK 8和Maven 3.3+并且工作得非常好。 但是,我们还需要构建其他需要JDK 6和Maven 3.0的旧项目(它也应该与Maven 3.2一起使用)。使用Eclipse IDE,项目成功编译,但是当由Jenkins Maven作业运行时,它会返回此错误:

  

线程“main”中的异常java.lang.UnsupportedClassVersionError:org / jvnet / hudson / maven3 / agent / Maven3Main:不支持的major.minor版本51.0

我检查过Jenkins使用了跟踪中提到的正确的JDK和Maven版本:

  

$ / usr / lib / jvm / java-6-oracle / bin / java -cp / var / lib / jenkins / plugins / maven-plugin / WEB-INF / lib / maven3- agent-1.12-alpha-1.jar:/usr/share/maven-3.0.5/boot/plexus-classworlds-2.4.jar org.jvnet.hudson.maven3.agent.Maven3Main / usr / share / maven -3.0.5 /var/cache/jenkins/war/WEB-INF/lib/remoting-3.17.jar / var / lib / jenkins / plugins / maven-plugin / WEB-INF / lib / maven3-interceptor -1.12-alpha-1.jar /var/lib/jenkins/plugins/maven-plugin/WEB-INF/lib/maven3-interceptor-commons-1.12-alpha-1.jar 45589

我已经阅读了一些关于Jenkins不再能够使用8岁以上的JDK构建Java项目的线程(虽然我只搜索过Maven)。 看看控制台输出是有意义的,Jenkins看起来像是试图使用作业指定的JDK(6)来检索一些自己的文件,但我真的不明白为什么他需要这样做?它与詹金斯的核心有关吗?

将项目升级到Java 8不是一个选项,也不是降级Jenkins。 是否有一种解决方法,以便使用Maven使用Jenkins构建Java 6项目?

我尝试在MAVEN_OPTS中使用-Dmaven.compiler.source=1.6 -Dmaven.compiler.target=1.6,但也无法使用。 可能有些东西我错过了,因为我刚接触詹金斯,但几个小时后就找不到了。我不是在帮忙,谢谢。

这是控制台输出的结尾:

Exception in thread "main" java.lang.UnsupportedClassVersionError: org/jvnet/hudson/maven3/agent/Maven3Main : 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 java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)

无法找到主类:org.jvnet.hudson.maven3.agent.Maven3Main。程序将会退出。 错误:无法启动Maven。退出代码= 1 完成:失败

0 个答案:

没有答案