我们正在对客户的某个代码执行源代码审核。该项目使用Maven。整个项目包含大约1000个模块。
我们假设项目的名称为Project X
,Project X
中的模块按顺序命名,Module 1
,Module 2
,依此类推,直到Module 1000
。
如果我想扫描整个项目,我只需进入Project X's
目录并运行mvn sca:translate
和mvn sca:scan
,然后扫描整个项目。
如果我只想扫描Module 1
,我会进入Module 1's
目录并运行命令并扫描Module 1
。
我的问题是,是否可以只扫描一组模块,比如Module 1
,Module 2
等,直到Module 100
,只需要最少的配置和人力?我们不想扫描整个项目,我们只想扫描一堆模块。
以下是项目的近似目录结构。
Project X
|
+-------->Module 1
| +
| +----src
| |
| +----test
| |
| +----pom.xml
|
|
+-------->Module 2
| |
| +----+src
| |
| +----+test
| |
| +----+pom.xml
|
+--------->pom.xml
+
PS:我们正在使用Fortify Maven Plugin
进行扫描。
感谢。
答案 0 :(得分:0)
您可以将maven translate命令传递给相同的Fortify构建ID,然后扫描该构建ID。如:
cd module 1
sourceanalyzer -b mybuild mvn sca:translate
cd to module2
sourceanalyzer -b mybuild mvn sca:translate
sourceanalyzer -b mybuild -scan -f output.fpr
这需要从模块1翻译代码然后从模块2翻译代码并将它们放在一个名为mybuild的Fortify构建ID中。然后对“mybuild”构建ID运行扫描,它将扫描模块1和模块2中的代码。
您还可以尝试将Fortify问题发布到https://protect724.hp.com的在线论坛。支持小组监督这些论坛。