Jenkins:加载插件Jenkins SonarQube插件v2.5(sonar)失败/不支持major.minor版本52.0

Jenkins:加载插件Jenkins SonarQube插件v2.5(sonar)失败/不支持major.minor版本52.0,sonarqube,jenkins-plugins,sonarqube-scan,Sonarqube,Jenkins Plugins,Sonarqube Scan,在Windows服务器上运行的Jenkins和JRE 7中,我们安装了SonarQube插件的最新版本:2.5 提示:我们需要JRE 7来运行Jenkins,因为另一个插件非常旧,不适用于Java8 然后,在Jenkins启动时,记录了以下警告: WARNING: Loading plugin Jenkins SonarQube Plugin v2.5 (sonar) failed perhaps due to plugin dependency issues java.io.IOExcepti

在Windows服务器上运行的Jenkins和JRE 7中,我们安装了SonarQube插件的最新版本:2.5

提示:我们需要JRE 7来运行Jenkins,因为另一个插件非常旧,不适用于Java8

然后,在Jenkins启动时,记录了以下警告:

WARNING: Loading plugin Jenkins SonarQube Plugin v2.5 (sonar) failed perhaps due to plugin dependency issues
java.io.IOException: Unable to load hudson.plugins.sonar.SonarPlugin from sonar
    at hudson.ClassicPluginStrategy.load(ClassicPluginStrategy.java:514)
    at hudson.PluginManager$2$1$1.run(PluginManager.java:517)
    at org.jvnet.hudson.reactor.TaskGraphBuilder$TaskImpl.run(TaskGraphBuilder.java:169)
    at org.jvnet.hudson.reactor.Reactor.runTask(Reactor.java:282)
    at jenkins.model.Jenkins$7.runTask(Jenkins.java:1026)
    at org.jvnet.hudson.reactor.Reactor$2.run(Reactor.java:210)
    at org.jvnet.hudson.reactor.Reactor$Node.run(Reactor.java:117)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.UnsupportedClassVersionError: hudson/plugins/sonar/SonarPlugin : Unsupported major.minor version 52.0
    at java.lang.ClassLoader.defineClass1(Native Method)
Jenkins启动后,SonarQube插件在“插件管理器”/“已安装”中不可见

在我们将插件降级到2.4.4版之后,一切又正常工作了

这是否意味着SonarQube插件v2.5要求Jenkins在JRE 8上运行

或者这个问题可以用另一种方式解决吗


更新:我试图通过将javahome设置为java8文件夹来解决这个问题。不幸的是,它没有解决问题。

事实上,自1.5版以来,Jenkins SonarQube扫描仪需要JDK 8


我不确定Jenkins如何选择它将运行的JDK(可以依赖于
JAVA_HOME
或使用路径中的JDK),但至少在我的Linux机器上,我可以使用
Jenkins\u JAVA_CMD
(可以在
/etc/sysconfig/Jenkins
中设置,或者可能作为环境变量设置)实际上,自1.5版以来,Jenkins的SonarQube扫描仪需要JDK 8


我不确定Jenkins如何选择它将运行的JDK(可以依赖于
JAVA_HOME
或使用路径中的JDK),但至少在我的Linux机器上,我可以使用
Jenkins\u JAVA_CMD
(可以在
/etc/sysconfig/Jenkins
中设置,或者可能作为环境变量设置).

将Jenkins.xml和java可执行文件更新为\java\jre1.8.0\u 112\bin\java解决了我的问题。我正在运行SonarQube 6.1、Jenkins 2.27和Sonar插件2.5,将Jenkins.xml和java可执行文件更新为\java\jre1.8.0_112\bin\java,解决了我的问题。我正在运行SonarQube 6.1、Jenkins 2.27和Sonar插件2.5

可能的重复,我们在Jenkins.xml文件中设置了%BASE%\jre_7u25x64\bin\java。因此,Jenkins开始使用给定的JRE 7版本。因此,我假设Jenkins中的SonarQube插件也使用JRE 7执行。插件是否支持它?在jenkins.xml文件中,我们设置了%BASE%\jre\u 7u25x64\bin\java。因此,Jenkins开始使用给定的JRE 7版本。因此,我假设Jenkins中的SonarQube插件也使用JRE 7执行。插件支持它吗?