开源软件声明生成工具
前段时间由于中美关系激化和各种贸易摩擦,我司也受到一定牵连,所以领导要求在所有软件产品上标注上使用到的所有第三方开元软件,并做好对应开元协议声明。
起初同事都是手动地查找zip包,把自己负责的组件中使用到的开源软件写出来,非常地费时费力,并且可能出现遗漏,所以我就想开发一个小工具,能够自动扫描编译出的zip包,生成包内所有引用到的开源软件到一个xml文件,按照公司规定的格式,就有了这个开源软件生成工具。
首先说明一下,开源软件都是以jar的形式被引用在组件的lib目录下,而一般情况下都会在对应的jar中注明当前开源软件的开源协议和版本,而有些开源软件,由于打包格式和特殊协议的原因,可能在本身的jar中没有写明自身遵循的开源协议,这种情况下就要人工去maven中央仓库中查找,拿到开源协议。
所以此工具总体上也是按这种逻辑进行编写的,大体流程如下:
工具源码的传送门在这里,这个小工具虽然功能简单,但也是麻雀虽小,五脏俱全了,里面为了加快扫描速度,也用了一些优化手段,各位如果遇到类似需求可以直接拿走使用,有什么问题或建议也可以直接联系我,如果帮到你的话希望能够点个star,多谢了。