我试图使用Jenkins的PMD插件。除了一件事,一切都很好。当Jenkins构建失败时,构建中的报告不会更新。这可能是一个问题,因为如果您的代码中出现严重错误,则必须手动转到工作区并读取.xml文件(由PMD生成)以查看您的错误。
我找到了有同样问题的人,不过这篇文章最后一次更新是在2009年。在帖子的最后,你可以看到有人解释说这还不是一个功能。 http://jenkins-ci.361315.n4.nabble.com/pmd-post-build-publishing-after-failing-build-td376948.html
我可以确认他的结果正在生成,因为我可以在我的Jenkins'中看到它们。工作区。但是,报告不会出现在构建中。
正如您在此处所看到的,由于PMD规则违规,Jenkins构建失败。哪个好,但是当我们进行构建时,您无法看到PMD报告。
我已经在Jenkins中安装了PMD插件,这种情况一直有效,直到我改变了ruleviolation。你可以在这里看到我的gradle的PMD代码:
task pmd (type: Pmd) {
ignoreFailures = false
description 'Run pmd'
group 'verification'
rulePriority = 2
ruleSets = ["java-android",
"java-basic",
"java-braces",
"java-strings",
"java-design",
"java-unusedcode"]
source = fileTree('src/main/java')
reports {
xml.enabled = true
html.enabled = false
}
}
check.doLast {
project.tasks.getByName("pmd").execute()
}
答案 0 :(得分:1)
所以经过大量搜索而没有找到任何东西。我开始研究解决方法。我正在使用Text-Finder plugin查找“PMD违规发现”文本。找到此文本后,构建将更改为失败,并且现在将显示报告。
但是,当您在“发现PMD违规”行之后运行构建后操作时,请注意,这些操作将不会执行。因此,将构建更改为不稳定。