获取依赖项许可证

Dav*_*itz 6 licensing maven-scm maven

我们需要获得我们服务的依赖项的所有许可。虽然很容易从报告插件(或mojohaus 的 license-maven-plugin)中获取它们,但我们的律师希望我们实际访问每个依赖项的来源并获取许可证文件。你知道我们如何才能做到这一点吗?

作为替代方案 - 如何获取工件的 scm 连接 URL?我可以使用这些信息来自动化这样的过程。

Phi*_*nne 1

为了使事情正确,您需要首先收集您依赖的每个 Jar 的所有二进制文件和源 Jars。这可能是一个好的开始:http://maven.apache.org/components/plugins/maven-dependency-plugin/(我不是maven专家)。它似乎也能够获取源。您可能想运行这样的东西,但我不确定来源在哪里:

mvn dependency:sources
Run Code Online (Sandbox Code Playgroud)

另请参阅:/sf/answers/795298941/

获取这些内容后,您可以安装 ScanCode ( https://github.com/nexB/scancode-toolkit ),然后运行extractcode包含 jar 的目录来解压它们,然后scancode --format html-app <you jar dir> my-jars.html获取许可证和版权的详细报告:在浏览器中打开 my-jars.html。

披露:我是 ScanCode 的作者之一,顺便说一句,我正在努力让 ScanCode 完全符合您的要求:解析 Maven dep 树,获取所有 Jars 和源代码,最后收集 POM 元数据并对二进制文件 + 源代码运行扫描。您有兴趣参与吗?

关于 scm 连接,POM 中并不一致,因此我不推荐该路线。源 Jars 的情况就更少了。