尝试运行Maven findbugs插件时获取java.lang.UnsupportedClassVersionError:edu/umd/cs/findbugs/FindBugs2
我正在使用Maven 3.2.3和Java6(1.6.45)。我想将FindBugs插件合并到我的站点报告中。所以我把这个加入我的pom尝试运行Maven findbugs插件时获取java.lang.UnsupportedClassVersionError:edu/umd/cs/findbugs/FindBugs2,maven,reporting,findbugs,unsupported-class-version,Maven,Reporting,Findbugs,Unsupported Class Version,我正在使用Maven 3.2.3和Java6(1.6.45)。我想将FindBugs插件合并到我的站点报告中。所以我把这个加入我的pom <reporting> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId>
<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>
我得到以下例外
[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如果您必须使用Java6,我想您可能需要Findbugs的2.0.3版本。然而,我承认,我是从关于Eclipse插件的类似问题的答案推断出来的。而且,再深入一点,v2.0.3似乎是最后一个支持Java6的Findbugs版本——请参阅发行说明。您正在使用的Findbugs版本似乎是用Java7编译的。我相信通过使用java7jdk运行Maven可以避免这条消息。看啊,我在运行Java6。您知道对于这样的JDK,正确的兼容版本是什么吗?对于Java6,major.minor版本号是50.0。这就是你的意思吗?可能将JAVA_HOME配置为指向Java7版本,然后确保您的环境接受了该更改,我认为这个问题已经解决。如果您必须使用Java6,我认为您可以使用Java6编译一个较旧的FindBugs版本——这只是一个想法。我仅限于使用Java6,所以我的问题是,与Java6兼容的FindBugs的最新版本是什么?
[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] ------------------------------------------------------------------------