【问题标题】:PMD maven plugin not working for jdk 1.7PMD maven 插件不适用于 jdk 1.7
【发布时间】:2017-09-26 22:28:19
【问题描述】:

当我运行 mvn pmd:check 并将 JAVA_HOME 设置为 jdk 1.8 时,它运行顺利。当我将 jdk 切换到 1.7 时,出现以下异常。 PMD 支持 1.7,所以不知道为什么会出现这个错误。

原因:org.apache.maven.plugin.PluginContainerException: 执行 org.apache.maven.plugins:maven-pmd-plugin:3.8:pmd: java.lang.UnsupportedClassVersionError: : Unsupported major 时遇到 API 不兼容.minor 版本 52.0

有人遇到过同样的问题吗?

【问题讨论】:

    标签: maven pmd


    【解决方案1】:

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

    【讨论】:

      【解决方案2】:

      这很奇怪。 PMD 仍在使用 JDK7 - 和 maven 一样。如果您要分析 Salesforce.com Apex 代码,则仅需要 JDK8。

      您介意使用-e-X 选项运行mvn,看看哪个类适用于java8?那么你应该得到一个堆栈跟踪。它可能是由依赖引起的。

      另外:您使用的是哪个版本的 maven?

      【讨论】:

      • 我使用的是 maven 3.3.9。当我将 pmd 插件降级到 3.7 时,异常消失了。
      猜你喜欢
      • 2016-05-26
      • 1970-01-01
      • 2020-09-24
      • 1970-01-01
      • 1970-01-01
      • 2019-01-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多