Maven 许可证插件聚合来自资源的许可证

maven license plugin aggregate licenses from resources

我们正在使用 maven 许可证插件(第三方聚合目标)来生成第三方项目依赖项列表 - 这很好,我们已经开始工作了。我想扩展它以包括我们资源的许可证(即不仅仅是 code/dependencies),但不知道从哪里开始 - 任何人都可以提供一个例子来说明我需要做什么才能完成这项工作吗?

我们得到的示例:在 Maven 模块资源文件夹中,我们保存了英国邮政编码数据集的副本(作为 json 文件),以便我们可以离线使用它。该文件已获得 Ordnance Survey OpenData 许可,因此我们将 LICENSE.txt 文件放在说明这一点的同一目录中。

我想要的结果:"Ordnance Survey OpenData license" 出现在我的 THIRD-PARTY.txt 文件中。

一些帮助回答的问题:

  1. 我能否直接在 pom.xml 中指定资源许可,这样我就不必保留我们创建的 LICENSE.txt 文件?

  2. license-maven-plugin 可以像我们现在使用的那样读取 LICENSE.txt 文件吗?

  3. 如果 2=yes,我是否需要指定文本格式以便 license-maven-plugin 获取许可证?

  4. 我是否需要为许可证添加标签以便 license-maven-plugin 获取这些许可证?

感谢您的帮助。

我正在使用 Maven 许可证插件(带有添加第三方目标)为我的所有 Maven 模块生成 THIRD-PARTY.txt 报告。我不确定这个插件是否可以扫描资源许可证。

一个解决方案应该是将您的 json 文件打包到一个小的 Maven 项目中。它将生成一个工件并将其存储到您的二进制存储库(Artifactory、Nexus 等)中。

接下来,在您的 Maven 项目中添加一个新的依赖项,英国邮政编码数据集将出现在您的 THIRD-PARTY.txt 报告中。