当我运行时,mvn pmd:pmd
我收到来自 PMD 的警告/错误,说代码不能在 java 1.4 或 1.5 中使用泛型、注释或枚举。当未设置 targetJdk 属性(我确实设置了)时,这应该是一个错误。
这是我得到的错误示例
[警告] 解析 /Users/augusto/Downloads/PMD-Clover2-Cobertura-Maven2-Test/PMDTest/src/main/java/org/xh/studies/quality/App.java 时出错:除非运行,否则无法使用泛型在 JDK 1.5 模式下!
这是我正在使用的 pom 的片段(下面有整个应用程序的链接)
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<source>1.6</source>
<target>1.6</target>
</configuration>
</plugin>
</plugins>
</build>
<reporting>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-pmd-plugin</artifactId>
<version>2.5</version>
<configuration>
<targetJdk>1.6</targetJdk>
</configuration>
</plugin>
</plugins>
</reporting>
我在 mac 上使用 Maven 3.0.2,最新的 java 补丁 1.6.0_24。
单击此处下载完整项目 (8kb)