javascript - 在使用 mvn 许可证插件生成的 THIRD-PARTY.txt 文件中添加其他许可证详细信息

标签 javascript maven licensing dhtmlx license-maven-plugin

我正在使用 license:aggregate-add-third-party 生成 THIRD-PARTY.txt 文件,其中包含所有依赖项的许可证详细信息。没有任何问题。

我还购买了几个 Javascript 库的许可证。 我想将这些 javascript 库的详细信息包含到我使用 Maven 许可证插件通过 pom 调用生成的 THIRD-PARTY.txt 文件中。

maven 许可证插件中有什么方法可以包含一些外部许可证的额外详细信息吗?

最佳答案

是的,这是可以做到的。在 pom.xml 中添加:

<configuration>
    <fileTemplate>${project.basedir}/src/main/resources/template.ftl</fileTemplate>
</configuration>

然后在资源目录中创建文件 template.ftl ,内容如下:

<#function licenseFormat licenses>
    <#assign result = ""/>
    <#list licenses as license>
        <#assign result = result + " (" +license + ")"/>
    </#list>
    <#return result>
</#function>
<#function artifactFormat p>
    <#if p.name?index_of('Unnamed') &gt; -1>
        <#return p.artifactId + " (" + p.groupId + ":" + p.artifactId + ":" + p.version + " - " + (p.url!"no url defined") + ")">
    <#else>
        <#return p.name + " (" + p.groupId + ":" + p.artifactId + ":" + p.version + " - " + (p.url!"no url defined") + ")">
    </#if>
</#function>
List of third-party dependencies:

<#list dependencyMap as e>
<#assign project = e.getKey()/>
<#assign licenses = e.getValue()/>
${licenseFormat(licenses)} ${artifactFormat(project)}
</#list>

您将自己的信息添加到此文件(到最后)。该文件是一个 Freemarker 模板。

关于javascript - 在使用 mvn 许可证插件生成的 THIRD-PARTY.txt 文件中添加其他许可证详细信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40280588/

相关文章:

javascript - 如何使用 Maven 资源插件复制单个文件

java - 启动时的 Liquibase 迁移无法使用 Spring-Boot

maven-2 - 无效的jar文件实际上是html的Maven问题

licensing - GNU/GPL 许可证和图像

macos - 缺少 Apple Developer Tools 5.x 的源代码

macos - mac : How to add a License. txt 到使用--component 选项使用productbuild构建的pkg?

javascript - 如何在 React 中呈现不同的布局?

javascript - 加载页面时 J-Query 错误

javascript - 纯 JavaScript 将图像拖到浏览器

javascript - 当 AngularJS 触发 $onEval 时,有什么方法可以立即告诉这个范围内的哪些值发生了变化?