当前位置: 首页 > 知识库问答 >
问题:

PMD maven 插件不适用于 jdk 1.7

夹谷硕
2023-03-14

当我运行mvn pmd:check并将JAVA_HOME设置为jdk 1.8时,这运行平稳。当我将jdk切换到1.7时,我得到以下异常。PMD支持1.7,所以不确定为什么我得到这个错误。

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

有人遇到同样的问题吗?

共有2个答案

唐利
2023-03-14

太奇怪了。PMD仍然在和JDK7一起工作maven也是。如果您想要分析Salesforce.com Apex代码,JDK8是唯一必需的。

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

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

齐典
2023-03-14

52.0是Java 8。这意味着我试图在Java 7虚拟机上运行Java 8代码。即使我的jdk和JAVA_HOME设置为7。我用的pmd插件是3.8版本,似乎支持jdk 8。我把我的maven-pmd-plugin降到了3.7。这个例外消失了。

 类似资料:
  • 我正在为我的项目设置Jacoco Gradle插件。该插件执行良好,并生成覆盖报告,但它不排除我将排除的包。 我想包含的类在com/xxx/ws/hn/**中,我想排除的类在com/xxx/ws/企业/**中。 这是我的Gradle脚本: 我有什么遗漏吗?我尝试过各种排除模式,包括“.”包的分隔符,而不是“/”,但似乎没有任何效果。任何帮助都将不胜感激。

  • 在我的项目中添加kongchen swagger-maven-plugin(版本3.1.0)后,log4j停止工作。我们正在使用Spring(版本4.1.5)和slf4j(版本1.7.5)如果我在pom.xml中注释掉kongchen插件依赖,log4j再次开始工作。你能帮忙吗?谢谢! 这是我的pom的内容。xml `http://maven.apache.org/maven-v4_0_0.xsd

  • 问题内容: 我试图使用 AngularJS 提供的和函数显示/隐藏一些HTML 。 **** 根据文档,这些功能的各自用法如下: ngHide – {表达式}-如果表达式为true,则分别显示或隐藏该元素。ngShow – {表达式}-如果表达式为真,则分别显示或隐藏该元素。 这适用于以下用例: 但是,如果我们使用对象中的参数作为表达式,则和被赋予正确的/ 值,但这些值不会被视为布尔值,因此始终返

  • 我目前在所有摩托罗拉设备上都面临着这个问题。设备名称为:-MOTO e4 plus和MOTO-X play。我目前使用此插件(Android WIFI ADB)进行WIFI调试。请建议我是否有其他插件或任何其他方式可用于WIFI调试。 提前谢谢。

  • 例如,用谷歌搜索网站,登陆主页,然后进入跨域网站正确记录“有机”作为媒介 (已通过在GA中使用实时数据进行验证) 但是,通过谷歌搜索网站,登陆主页,然后进入跨域网站并完成一个事件,会错误地将“Direct”记录为该事件的媒介。 GTM设置已配置为: -5个域推送到“汇总”GA帐户 -autoLinker=true -Cookie-Domain=auto -auto-Link-domains=sit

  • 背景: 最近我一直在开发一个程序,该程序对输入数据文件(用户以完整路径或名称的形式给出,如果它位于程序创建的名为inputFiles的文件夹中)执行一些数据分析并吐出一堆输出数据文件(使用CSV)。 问题: 我遇到的问题是,当我运行时。jar在我的Windows机器上,它将创建3个文件夹(InputFiles、TempFiles和OutPutFiles),但当程序在Mac上时,GUI会启动,但不会