Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/jenkins/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jenkins 使用OWASP dependencyCheck为java模块生成单独的报告,而不是一个大报告_Jenkins_Continuous Integration_Jenkins Pipeline_Jenkins Plugins_Owasp - Fatal编程技术网

Jenkins 使用OWASP dependencyCheck为java模块生成单独的报告,而不是一个大报告

Jenkins 使用OWASP dependencyCheck为java模块生成单独的报告,而不是一个大报告,jenkins,continuous-integration,jenkins-pipeline,jenkins-plugins,owasp,Jenkins,Continuous Integration,Jenkins Pipeline,Jenkins Plugins,Owasp,我正试图将Jenkins CI管道生成的依赖项检查报告分解为多个报告(每个模块一个),因为有一个巨大的报告可能会变得相当大且难以阅读。这是我迄今为止完成此任务的代码: if(fileExists('pom.xml')) { def pom = readMavenPom file: 'pom.xml' pom.modules.each { dependencyCheck additionalArguments: "--scan ./${it} --format CSV --o

我正试图将Jenkins CI管道生成的依赖项检查报告分解为多个报告(每个模块一个),因为有一个巨大的报告可能会变得相当大且难以阅读。这是我迄今为止完成此任务的代码:

if(fileExists('pom.xml')) {
   def pom = readMavenPom file: 'pom.xml'
   pom.modules.each {
     dependencyCheck additionalArguments: "--scan ./${it} --format CSV --out owasp-reports/${it}-dependency-check-report.csv", odcInstallation: "${env.DEPENDENCY_CHECK}"
     dependencyCheck additionalArguments: "--scan ./${it} --format JSON --out owasp-reports/${it}-dependency-check-report.json", odcInstallation: "${env.DEPENDENCY_CHECK}"
     dependencyCheck additionalArguments: "--scan ./${it} --format HTML --out owasp-reports/${it}-dependency-check-report.html", odcInstallation: "${env.DEPENDENCY_CHECK}"
   }
我正在使用适当的名称生成文件,但没有扫描依赖项。但是,这会生成一个包含所有子模块的大型报告

dependencyCheck additionalArguments: '--scan ./ --format XML --format JSON --format HTML --format CSV --out owasp-reports', odcInstallation: "${env.DEPENDENCY_CHECK}"

如果您有任何建议,我们将不胜感激。

对于其他任何人来说,这可能会有所帮助,这就是我提出的解决方案:

if(fileExists('pom.xml')) {
    def pom = readMavenPom file: 'pom.xml'
    pom.modules.each {
        dir("${it}"){
            sh "mvn org.owasp:dependency-check-maven:aggregate"
            sh "mv target/dependency-check-report.html ../owasp-reports/${it}-dependency-check-report.html"
        }
    }
  }
显然,使用Jenkins插件调用的问题在于Jenkins插件包装了CLI命令,这些命令无法识别pom文件。
资料来源: