我正在使用SonarQube 5.5版。我的SonarQube服务器在Windows 64位上的http://localhost:9000上成功运行。
我有一个在jdk 1.7上运行的Maven项目,其带有Sonar服务器配置的POM如下所示。
<properties>
<java-version>1.7</java-version>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.source>1.7</maven.compiler.source>
<maven.compiler.target>1.7</maven.compiler.target>
<wsdl4j.version>1.4</wsdl4j.version>
<commons-logging.version>1.1.1</commons-logging.version>
<commons-io.version>2.5</commons-io.version>
<sonar.host.url> http://localhost:9000/</sonar.host.url> </properties>
当我运行mvn sonar:sonar
命令时,它会给我以下错误。
Caused by: java.lang.UnsupportedClassVersionError: org/sonarsource/scanner/maven/SonarQubeMojo : Unsupported major.minor version 52.0
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:800)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)
at java.net.URLClassLoader.access$100(URLClassLoader.java:71)
at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClassFromSelf(ClassRealm.java:386)
at org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy.loadClass(SelfFirstStrategy.java:42)
at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:244)
at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:230)
at org.sonatype.guice.bean.reflect.URLClassSpace.loadClass(URLClassSpace.java:101)
我理解它的java版本问题,但无法找出解决方案。
有没有人面临这样的问题?
答案 0 :(得分:0)
使用的SonarQube Maven插件仅支持Java 8+。你应该在你的pom或命令行中强制使用旧版本的org.codehaus.mojo:sonar-maven-plugin。