【发布时间】:2019-09-04 06:11:26
【问题描述】:
我有一些 jar 文件,我想针对这些 jar 文件运行 sonarqube 扫描(尤其是 findbugs),但我没有源代码。仅针对类文件运行扫描是否有任何更改?
当对提取的 jar 文件运行 sonar-scanner 时,我总是收到这样的消息:
18:49:58.364 调试:“freemarker/template/TemplateServletUtils.class”用语言“null”索引
当我将 sonar-project.properties 中的语言定义为“java”时,我得到了
18:58:41.487 警告:文件“/home/hans/testcode/testproj/freemarker/template/SimpleHash.class”被忽略,因为它不属于强制语言“java”
谢谢!
【问题讨论】:
-
不,你不能。 Sonarqube 分析源代码,而不是编译器生成的代码。后者可能会更改/优化某些地方,使类文件不再反映原始 .java 代码。
-
好吧,现在我很困惑 - 我认为强烈建议将类文件提供给 sonarqube,如下所述:docs.sonarqube.org/display/PLUG/Java+Plugin+and+Bytecode。我错过了什么吗?
标签: java sonarqube sonarqube-scan