Maven:在 JAR 的 META-INF 中包含文件

新手上路,请多包涵

我正在使用 Maven 构建一个 Java 项目,我有几个文件 CHANGELOGLICENSE ,我想将它们复制到 META-INF JAR 文件中的目录。

到目前为止,我的工作如下:

 <build>
    <resources>
        <resource>
            <directory>${project.basedir}</directory>
            <includes>
                <include>CHANGELOG</include>
                <include>LICENSE</include>
            </includes>
            <targetPath>META-INF</targetPath>
        </resource>
    </resources>
    <plugins>
        ...

但这也会在编译时将这两个文件复制到 classes/META-INF 目录。

所以我希望这些文件包含在 JAR 文件中,而不是其他地方。有没有办法做到这一点?

原文由 Julián Urbano 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 839
1 个回答

您不需要指定任何自定义 Maven 配置来满足您的需要。

src/main/resources 中,只需创建一个 META-INF 文件夹并将文件放在这里。

这样,您可以在构建的 JAR 的 META-INF 文件夹中找到它们。

此外,您应该删除在 --- 中添加的 pom.xml <resource> 元素,因为它将默认资源文件夹更改为项目的根目录而不是默认的 src/main/resources

原文由 davidxxx 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题