利用 maven 自动化检测 License

本文介绍了如何结合 Maven 插件和 Jenkins 实现自动化检测项目依赖的 License,避免在商业项目中引入 GPL 等不合适 License 的依赖。通过配置 Maven 的 License Maven Plugin,并在 Jenkins 中创建 Job,可以在每次构建时自动检查并生成报告。
摘要由CSDN通过智能技术生成

如何利用 maven plugin + Jenkins 自动化检测 License,网上相关文章较少,主要参考官网。

一个大型项目会有很多人开发,在引用依赖时很少关注其 License,但在商业产品中,这是非常需要注意的一点,单纯的 GPL License 是不能用于商业产品的。比如我经历的项目中,有 500 多个依赖,如果手动去检测是相当耗时的,如果某个同事突然引用了一个 GPL Liense 的依赖,通过自动化检测,每次发布前运行任务即可发现该问题。

Maven 插件配置

插件名称是:License Maven Plugin

maven 版本要求:3.5.4+

需要执行的 maven 命令:

mvn license:aggregate-add-third-party

在 mvn 命令中,可以通过 -D 参数添加配置,但这样做不方便,直接修改 pom 文件更合适。

在主 pom.xml 文件中,添加如下配置,将对我使用到的配置进行解释,详细的配置可查看官方文档。

<plugin>
  <groupId>org.codehaus.mojo</groupId>
  <artifactId>license-maven-plugin</artifactId>
  <version>2.0.0</version>
  <executions>
    <execution>
      <goals>
        <!-- 该插件有很多种执行目标,比如 license-list 是用来列出可用的 license,add-third-party 用来检测单个项目中的 license -->
        <!-- aggregate-add-third-party 表示检测多模块项目的 license -->
        <goal>aggregate-add-third-party</goal>
      </goals>
    </execution>
  </executions>
  <!-- 设置配置,以下配置都是非必须的 -->
  <configuration>
    <!-- 设置检测结果文件的存放目录 -->
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值