1
我正在使用Maven 3.2.3和Java 6(1.6.45)。我想将FindBugs插件合并到我的网站报告中。所以我说这到我的POM ...当试图运行Maven FindBugs插件时,获取java.lang.UnsupportedClassVersionError:edu/umd/cs/findbugs/FindBugs2
<reporting>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId>
<version>2.13</version>
<reportSets>
<reportSet>
<reports>
<report>checkstyle</report>
</reports>
</reportSet>
</reportSets>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>findbugs-maven-plugin</artifactId>
<version>3.0.0</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jxr-plugin</artifactId>
<version>2.3</version>
</plugin>
</plugins>
</reporting>
然而,当我运行
mvn site:site site:deploy
我得到下面的异常...
[INFO] Generating "FindBugs" report --- findbugs-maven-plugin:3.0.0
[INFO] Locale is en
[INFO] Fork Value is true
[java] Exception in thread "main" java.lang.UnsupportedClassVersionError: edu/umd/cs/findbugs/FindBugs2 : Unsupported major.minor version 51.0
[java] at java.lang.ClassLoader.defineClass1(Native Method)
[java] at java.lang.ClassLoader.defineClassCond(ClassLoader.java:637)
[java] at java.lang.ClassLoader.defineClass(ClassLoader.java:621)
[java] at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)
[java] at java.net.URLClassLoader.defineClass(URLClassLoader.java:283)
[java] at java.net.URLClassLoader.access$000(URLClassLoader.java:58)
[java] at java.net.URLClassLoader$1.run(URLClassLoader.java:197)
[java] at java.security.AccessController.doPrivileged(Native Method)
[java] at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
[java] at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
[java] at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
[java] at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
[INFO] ------------------------------------------------------------------------
任何想法还有什么我需要包括修复这个?谢谢, - Dave
您正在使用的FindBugs的发布似乎已经用Java7进行了编译。我相信你会通过使用Java7 JDK运行Maven来避免此消息。请参阅http://stackoverflow.com/questions/10382929/unsupported-major-minor-version-51-0 – unigeek 2015-01-20 21:03:03
啊,我正在运行Java 6.你知道什么是这样一个JDK的正确兼容版本? – Dave 2015-01-20 21:24:20
对于Java6,major.minor版本号是50.0。你是这个意思吗?可能将JAVA_HOME配置为指向Java7版本,然后确保您的环境获取该更改,并且我正在考虑解决此问题。如果你必须使用Java6,我会认为你可以得到一个用Java6编译的老版本的FindBugs版本 - 只是一个想法。 – unigeek 2015-01-20 21:28:27