【问题标题】:How can PMD HTML Report's Error Description Link Show Local FolderPMD HTML报告的错误描述链接如何显示本地文件夹
【发布时间】:2021-12-09 06:58:58
【问题描述】:

我正在通过 ant 任务为我的 java web 项目使用 PMD 源代码分析器 (PMD)。计算机处于脱机状态(未连接到 Internet)。部分ant任务如下:

<target name="pmd">

  <taskdef name="pmd" classname="net.sourceforge.pmd.ant.PMDTask">
    <classpath>
      <fileset dir="E:/pmd-bin-6.41.0/lib">
        <include name="*.jar"/>
      </fileset>
    </classpath>
  </taskdef>

  <pmd shortfilenames="true" cachelocation="pmd.cache" encoding="UTF-8">

    <ruleset>web/resources/category/java/bestpractices.xml</ruleset>

    <formatter type="html" tofile="report.html">
    </formatter>

    <fileset dir="src/java/">
      <include name="**/*.java"/>
    </fileset>
  </pmd>
</target>

当我运行pmd 目标时,report.html 文件生成正常。 html 文件基本上列出了 description> 三元组。

例如

foo.java...43...The initializer for variable "tempIDNo" is never used (overwritten on lin 67)

此 html 文件中的 说明 有一个链接为 file:///E:ws/project/${pmd.website.baseurl}/pmd_rules_java_bestpractices.html#unusedassignment,它不起作用。 E:ws/project/ 是我的项目所在的文件夹。

事实上,我已经在E:/pmd-doc-6.41.0文件夹中解压了所有必要的html文件(例如pmd_rules_java_bestpractices.html)。

您能帮我如何在 html 文件中设置 description 链接以显示本地文件夹吗?

谢谢。

【问题讨论】:

    标签: ant pmd


    【解决方案1】:

    这是我想出的解决方案:

    1. (使用来自 (How can I create a link to a local file on a locally-run web page?) 的建议)在 ant pmd 目标定义属性 pmd.website.baseurl 之前
        <propery name="pmd.website.baseurl" value="file:///E:/pmd-doc-6.41.0"/>
    
    1. (使用来自 (https://ant.apache.org/manual/Types/filterchain.html#expandproperties), ANT replacing strings in specified files using file with properties 的用法/建议)更改内部目标如下
    ...
    <pmd ...>...
    </pmd>
    <copy file="report.html" tofile="report2.html">
      <filterchain>
        <filterreader classname="org.apache.tools.ant.filters.ExpandProperties"/>
      </filterchain>
    </copy> ...
    
    1. 运行 ant 目标。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-12-29
      • 2018-06-07
      • 1970-01-01
      • 2022-09-29
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多