在Gradle中添加Dependency Check,以及在Sonar中查看报告

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在Gradle中添加Dependency Check,以及在Sonar中查看报告相关的知识,希望对你有一定的参考价值。

参考技术A

在项目中需要引入 dependency check 的工具来扫描相关依赖的库是否有安全漏洞等问题。由于是使用Gradle作为依赖构建工具,以及kotlin作为开发语言,所以选择了 owasp dependency check 的 Gradle 插件的方式。最后需要将报告上传到 sonar 进行展示。

在 build.gradle.kts 中添加相关的依赖:

在 sonar 的配置项中添加 dependency check 报告的路径:

在 sonar 中选择 Administration 的tab,进入 Marketplace 。在 Plugins 中搜索并安装如图的插件:

项目中使用了 Jenkins 作为CI构建工具,所以需要在其中添加一个 stage 用于将 dependency check report 上传到 sonar 中。如下:

由于 dependency check 并不是每次跑pipeline都需要,所以通过 timeout+input 的方式来手动run这一个stage。当跑完 ./gradlew dependencyCheckAnalyze 后就会生成相关的report文档,默认是html格式,可以通过配置修改。

当dependency check跑完之后,就应该执行 ./gradlew sonarqube 命令将本地report上传到sonarqube来分析。sonar的 host.url 和 login 参数既可以配置在sonar对应的properties,也可以在run命令的时候传入。这里是因为将 creds 配置到了Jenkins中,所以在Jenkins file中通过获取凭证的方式来配置。

当Jenkins CI跑完Sonar Analysis后,就可以去Sonar上查看对应的dependency check的report。如图

以上是关于在Gradle中添加Dependency Check,以及在Sonar中查看报告的主要内容,如果未能解决你的问题,请参考以下文章

Java Gradle入门指南之依赖管理(添加依赖仓库版本冲突)

Android Studio 出现 Gradle's dependency cache may be corrupt 解决方案

Gradle 同步失败:原因:打开 zip 文件时出错 Corrupt Dependency Cache

Gradle's dependency cache may be corrupt解决方法

intellij idea更新gradle项目报错:Could not run build action using Gradle distribution

解决Android Studio出现Failed to open zip file. Gradle's dependency cache may be corrupt的问题