使用maven更改war内的一个依赖jar的名称

时间:2014-01-02 18:56:13

标签: maven maven-3

我想在我的“打包”战争中更改一个依赖jar的名称..

有了这个,我可以更改所有库名称

<build>
    <finalName>myfinalwarname</finalName>
    <resources>
        <resource>
            <directory>${basedir}/src/main/resources</directory>
        </resource>
    </resources>
    <plugins>
         <plugin> 
                <groupId>org.apache.maven.plugins</groupId> 
                <artifactId>maven-war-plugin</artifactId> 
                <version>2.4</version> 
                <configuration> 
                   <archiveClasses>false</archiveClasses> 
                   <outputFileNameMapping>@{artifactId}@.@{extension}@</outputFileNameMapping> 
                </configuration> 
            </plugin> 
    </plugins>
</build>

在EAR项目中,我可以像这样用jarModule更改“一个”名称

        <plugin>
            <artifactId>maven-ear-plugin</artifactId>
            <version>2.6</version>
            <configuration>
                <finalName>ws-mantenedoresCA</finalName>
                <defaultJavaBundleDir>lib/</defaultJavaBundleDir>
                <archive>
                    <manifest>
                        <addClasspath>true</addClasspath>
                    </manifest>
                </archive>
                <modules>
                   <jarModule>
                      <groupId>the.groupid</groupId>
                      <artifactId>theArtifacIDName</artifactId>
                      <bundleFileName>theNewName.jar</bundleFileName>
                   </jarModule> 

但是我无法找到如何使用maven改变WAR内的一个jar名称。

提前致谢...

1 个答案:

答案 0 :(得分:0)

内部构建标记

        <plugin>
            <artifactId>maven-antrun-plugin</artifactId>
            <executions>
                <execution>
                    <id>default-cli</id>
                    <goals>
                        <goal>run</goal>
                    </goals>
                    <configuration>
                        <tasks>
                            <move
                                tofile="${project.build.directory}/${project.build.finalName}/WEB-INF/lib/lib-coreps.jar">
                                <fileset
                                    dir="${project.build.directory}/${project.build.finalName}/WEB-INF/lib/">
                                    <include name="**/lib-coreps*.jar" />
                                </fileset>
                            </move>
                        </tasks>
                    </configuration>
                </execution>
            </executions>
        </plugin>