0

我试图将 PMD 插件安装到我的 IntelliJ IDE。我已按照说明进行操作,但在尝试运行 pmd 检查时出现以下异常。从它看起来的“。” 被解析为 / ,它为类加载器生成错误的文件名。

意思是路径:即使设置是

-cp %CLASSPATH%; C:/Development/IDE/Utils/PMDPlugin/lib/pmd-4.2.5.jar; C:\Development\IDE\Utils\PMDPlugin\lib\asm-3.1.jar; C:\Development\IDE\Utils\PMDPlugin\lib\jaxen-1.1.1.jar net.sourceforge.pmd.PMD "$FilePath$" ideaj unusedcode,imports "$Sourcepath$" $FileClass$.method $FileName$

由于某种原因,它仍在寻找 C:/Development/IDE/Utils/PMDPlugin/lib/pmd-4/2/5/jar

这是一个例外:

java.lang.NoClassDefFoundError: C:/Development/IDE/Utils/PMDPlugin/lib/pmd-4/2/5/jar;
Caused by: java.lang.ClassNotFoundException: C:.Development.IDE.Utils.PMDPlugin.lib.pmd-4.2.5.jar;
    at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
Could not find the main class: C:/Development/IDE/Utils/PMDPlugin/lib/pmd-4.2.5.jar;.  Program will exit.
Exception in thread "main"

我正在使用 Intelli IDEA 10.0.3 Build #IC 103.288 构建于 2011 年 4 月 JDK 1.6.0_21

你有什么建议吗??谢谢

4

1 回答 1

2

看起来您的 CLASSPATH 条目之间有空格。那不行;删除它们。

更新:

我下载了 PMD 并设法让它运行。我按照你发布的指示,用我自己的路径替换了 PMD 的路径。我建议不要使用其中包含空格的路径。

犹豫不决的一件事是%JAVA_HOME%,所以我将它替换为我的 Java /bin 的硬连线路径。一旦我这样做了,一切都很好。

我会问为什么你认为 PMD 比 IntelliJ 内置的检查器工具更好?我宁愿用复选框来设置规则,也不愿做 PMD 要求的所有废话。

一旦我对可以使它工作感到满意,我就将其删除。我宁愿运行 Inspector。

于 2011-05-06T00:15:30.290 回答