2017-09-26 81 views
0

当我运行mvn pmd:检查与JAVA_HOME设置为jdk 1.8,这运行顺利。当我将jdk切换到1.7时,出现以下异常。 PMD支持1.7,所以不知道为什么我得到这个错误。PMD maven插件不工作的JDK 1.7

产生的原因:org.apache.maven.plugin.PluginContainerException:执行org.apache.maven.plugins遇到一个API不兼容:Maven的PMD-插件:3.8:PMD:java.lang.UnsupportedClassVersionError错误:不支持major.minor version 52.0

任何人都面临同样的问题?

回答

0

52.0是Java 8.这意味着我以某种方式尝试在Java 7 VM中运行Java 8代码。尽管我的jdk和JAVA_HOME被设置为7. 我使用的pmd插件是3.8版本,它似乎支持jdk 8+。 我将我的maven-pmd-plugin降级到3.7。异常消失了。

0

这很奇怪。 PMD仍然在使用JDK7--就像maven一样。只有在需要分析Salesforce.com Apex代码时才需要JDK8。

您是否介意使用-e-X选项运行mvn,以查看java8的哪个类?你应该得到一个堆栈跟踪。这可能是由依赖造成的。

另请参见:您正在使用哪个版本的maven?

+0

我正在使用maven 3.3.9。当我将我的pmd插件降级到3.7时,异常消失了。 – poojaN