gpt4 book ai didi

Maven 程序集插件。有什么方法可以直接从描述 rune 件中解压缩/解压缩存档,而不是依赖 antrun 插件?

转载 作者:行者123 更新时间:2023-12-02 00:16:48 24 4
gpt4 key购买 nike

我正在使用 maven 程序集插件版本 2.2.1 以自定义的专有格式构建包。作为这个过程的一部分,我需要提取一堆外部文件(我所说的外部是指它们没有列为 Maven 依赖项,但它们是文件系统上的任意文件)。

你知道 maven assembly 是否能够做到这一点吗?我已经看过,显然,它能够在任意文件夹中提取一堆依赖项,但它无法提取外部存档。

最佳答案

使用 <unpack>true</unpack>在你的<dependencySet>是要走的路。

Maven 不支持外部存档。因此,您需要使用例如附加它们build-helper:attach-artifact然后你可以通过 <dependencySet> 引用它

更新

其中一条评论想知道如何避免将附加的 Artifact 安装到 Maven 存储库(本地/远程)中

解决方案是使用一个非传递依赖的虚拟模块。

我们依赖正在构建的程序集而不是用作传递依赖项。

所以你从一个虚拟模块开始,它看起来有点像

<project>
...
<packaging>pom</packaging>
...
<properties>
<maven.deploy.skip>true</maven.deploy.skip>
<maven.install.skip>true</maven.install.skip>
<!-- or you could override the plugin configuration for a safer - but less quick - solution -->
</properties>
...
</project>

该虚拟模块可以使用 build-helper:attach-artifacts 附加文件

您的程序集模块将只列出依赖项 <scope>provided</scope><optional>true</optional>作为防止成为传递依赖项的保护措施。 (如果程序集是安装程序包并且不会被其他 Maven 构建使用,则不需要。

好了,压缩内容将从一个存档流式传输到另一个存档,原始文件将不会复制到远程存储库...但是您始终需要构建破解构建组件的任何反应器中的模块。

关于Maven 程序集插件。有什么方法可以直接从描述 rune 件中解压缩/解压缩存档,而不是依赖 antrun 插件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12705281/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com