当前位置: 首页 > 知识库问答 >
问题:

Maven汇编插件-多描述符?

裴星洲
2023-03-14

目标是创建一个单一的ZIP文件,但将Maven程序集插件的配置拆分成一个通用的、更具体的描述符。

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-assembly-plugin</artifactId>
    <version>3.0.0</version>
    <configuration>
        <descriptors>
            <descriptor>${project.basedir}/../src/assembly/rest-executables.xml</descriptor>
            <descriptor>${project.basedir}/../../src/assembly/deliverables.xml</descriptor>
        </descriptors>
    </configuration>
    <executions>
        <execution>
            <id>make-assembly</id>
            <phase>package</phase>
            <goals>
                <goal>single</goal>
            </goals>
        </execution>
    </executions>
</plugin>

但是,当两个自定义描述符具有唯一ID时,将创建两个ZIP文件,每个文件都包含预期的内容。当ID相同时,只执行最后一个描述符(或覆盖之前的内容)。

我尝试的是不可能的,还是我错过了一个选项,比如“追加到现有ZIP”,而不是“总是创建新ZIP”?

共有1个答案

徐卓
2023-03-14

我能够重现这个问题,并通过删除内部描述符标记修复了它

<configuration>
    <descriptors>${project.basedir}/../src/assembly/rest-executables.xml,${project.basedir}/../../src/assembly/deliverables.xml</descriptors>
</configuration>

它开始按预期生产人工制品。在还原内部元素之后,我无法重现这个问题。

 类似资料:
  • 我需要对maven依赖插件进行更改,以满足我的组织中的独特要求。 我已经从http://maven.apache.org/plugins/maven-dependency-plugin/download.cgi 当我查看它的pom时,我看到它定义了一个父pom,如下所示: 这让我明白,这个项目不能独立构建,至少不能是我拥有的版本。 当试图运行mvn清洁安装无论如何我得到以下错误: 无法下载工件:无

  • 我在我的项目中使用了assembly maven插件,在单个zip文件中从文件夹中交付JAR、生成可执行文件和一些脚本。我怎么能和格拉德一起呢?我见过gradle交付和应用程序插件,但我无法正确配置它们。

  • 有没有一种方法可以在不绑定到一个阶段的情况下运行组装插件?如果有的话,我可以运行package和shade插件,然后独立运行assembly插件?如果可能的话,那会解决我的问题。

  • 我使用maven汇编插件来压缩我的web应用程序dist文件夹。我使用这个文件: 我在父pom中使用它作为依赖项,如下所示: 根据使用此父pom的子级,我想告诉您maven assembly插件必须在哪个目录中使用assembly描述符。我用

  • 我正在学习创建maven插件的教程,在运行mvn install时会出现错误。信息抱怨我没有所需的mojo描述符,而注释应该为我生成它们。我正在运行Maven3.0.5并使用intellij作为我的IDE。以下是我的主要课程: 这是我的pom.xml 注意:我必须单独添加注释依赖项,因为主插件api不包含这些类。当我在我的项目上运行mvn install时,输出如下:

  • 我尝试了正确安装Maven的教程,但每当我尝试运行命令“mvn archetype:generate”时,总是会出现这个错误。您是否尝试在cmd和netbeans中运行,错误是相同的。我已经搜索,但我只出现问题或代理或目录。