【问题标题】:How can I change the war name generated by maven assembly plugin如何更改 maven 程序集插件生成的战争名称
【发布时间】:2011-03-16 23:38:02
【问题描述】:

如何将名称从 1.0.snapshot-jar-with-dependencies 更改为其他名称,以下是我的 POM 的内容:

<build>
    <plugins>
        <plugin>
            <artifactId>maven-assembly-plugin</artifactId>
            <version>2.2-beta-5</version>
            <configuration>
                <archive>
                    <manifest>
                        <mainClass>com.package.example.MainClass</mainClass>
                    </manifest>
                </archive>
                <descriptorRefs>
                    <descriptorRef>jar-with-dependencies</descriptorRef>
                </descriptorRefs>
            </configuration>
        </plugin>
    </plugins>
</build>

【问题讨论】:

    标签: maven-2


    【解决方案1】:

    maven-assembly-plugin的配置中使用以下内容:

    <configuration>
      <finalName>custom-name</finalName>
      <appendAssemblyId>false</appendAssemblyId>
    </configuration>
    

    assembly:single mojo 的官方文档中的完整详细信息。

    【讨论】:

    【解决方案2】:

    您可以通过在 pom 中指定 finalName 属性来实现此目的,例如

    <build>
        <finalName>something-else</finalName>
        ...
    </build>
    

    【讨论】:

    • 再次我得到了一些东西-else-jar-with-dependencies 这工作,我怎样才能摆脱jar-with-dependencies,当我删除descriptorRefs我得到构建错误
    • 确实,您需要 Pascal 建议的 &lt;appendAssemblyId&gt;false&lt;/appendAssemblyId&gt; 标签。
    • 注意,后缀会附加到这个名字之后。
    【解决方案3】:

    在打包带有依赖项的 JAR 的情况下,将不起作用。您将使用依赖插件修复它:

            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-dependency-plugin</artifactId>
                <executions>
                    <execution>
                        <id>copy</id>
                        <phase>package</phase>
                        <goals>
                            <goal>copy</goal>
                        </goals>
                        <configuration>
                            <artifactItems>
                                <artifactItem>
                                    <groupId>project.group.id</groupId>
                                    <artifactId>artifact-id</artifactId>
                                    <version>0.0.1-SNAPSHOT</version>
                                    <type>jar</type>
                                    <overWrite>true</overWrite>
                                    <outputDirectory>${basedir}/some/dir</outputDirectory>
                                    <destFileName>custom-name.jar</destFileName>
                                </artifactItem>
                            </artifactItems>
                            <overWriteReleases>false</overWriteReleases>
                            <overWriteSnapshots>true</overWriteSnapshots>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
    

    【讨论】:

      猜你喜欢
      • 2013-03-25
      • 1970-01-01
      • 2012-03-29
      • 2011-08-18
      • 1970-01-01
      • 1970-01-01
      • 2010-12-01
      • 1970-01-01
      • 2011-02-27
      相关资源
      最近更新 更多