PMD 的本地调试环境配置

PMD 的工具就不再介绍。主要是最近在使用过程中,想通过ide 进行调试时,遇到了些问题,以此文记录该过程。

PMD github 地址为:

https://github.com/pmd/pmd

获取到本地 位置:

git clone https://github.com/pmd/pmd

从项目介绍上看,是采用 maven 工具构建的。

到官网下载:

http://maven.apache.org/download.cgi

配置maven 环境变量。

来到之前下载pmd源码目录下使用:

PMD 的本地调试环境配置_第1张图片

结果报错:

PMD 的本地调试环境配置_第2张图片

本人jdk版本为1.8。

后来修改了文件:

apache-maven-3.3.9\conf\toolchains.xml

指定了,1.7/1.8 版本都指向 1.8 的jdkHome 目录。   其实怀疑这样修改是有隐患的。这个后续再查。但奇怪的是maven官网上告知这个版本,使用jdk1.7+ 以上的不需要配置的,也可能是我理解问题。 这个待查。

PMD 的本地调试环境配置_第3张图片

好,再尝试一次。

嗯,可以正常跑通了。

目前只是本地可以编译通过了。


但如何导入IDE进行调试?

使用IDE+Meavn插件构建

个人用的IDE 工具是  IntelliJ IDEA Community Edition 2016.1.1

使用过内置的 maven 插件,发现总是失败。后来把IDE 的maven 插件修改为本地下载的Maven 版本可以顺利编译通过。

setting 下配置 maven home 为本地的


PMD 的本地调试环境配置_第4张图片

setting files  和repository(可以在settings.xml 下配置) 也最好改成 与 maven home 配置的一致。(虽然上面没有动过 settings.xml这个文件)

导入pmd 项目   :


PMD 的本地调试环境配置_第5张图片


从  pmd.bat 文件上看,Main_CLASS 为: net.sourceforge.pmd.PMD

PMD 的本地调试环境配置_第6张图片

 pmd-core  下的  PMD 类里找到main函数。


PMD 的本地调试环境配置_第7张图片

直接运行 该类。

PMD 的本地调试环境配置_第8张图片

看来是正常了。


使用自己的规则文件


这里参考官网的步骤:

http://pmd.sourceforge.net/snapshot/customizing/howtowritearule.html

这样获取了两个文件 ,  myrule.xml  、 myrule.java

入参直接写死 。     (也可以不用指定 language/version。额,应该说这两项默认值就是如此。)

提示class not find

需要把  java 文件放置到 可以被加载到的目录。

这里直接放入到  pmd-core\src\main\java 目录下(取决于java文件的 package路径,我这个是没有写package的。)

导入引入的jar包(pmd-java)

PMD 的本地调试环境配置_第9张图片

可以正常运行。当然我知道这个不是好的方案,原谅我没有用过maven,后续会再学习下,更合理的配置。

你可能感兴趣的:(PMD 的本地调试环境配置)