4

当我构建我的项目时,我运行这个命令:

mvn clean package

我希望在默认目标目录中生成的 jar 文件在此package阶段被复制到另一个目录中。

我怎样才能用 Maven 做到这一点?

4

2 回答 2

1

您可以使用 ant run 插件将内容复制过来。

以下内容来自rhq-project.org的pom

 <build>
    <plugins>

       <plugin>
          <artifactId>maven-antrun-plugin</artifactId>
          <version>1.1</version>
          <executions>

             <execution>
                <id>deploy-jar-meta-inf</id>
                <phase>package</phase>
                <configuration>
                   <tasks>
                      <unjar src="${project.build.directory}/${project.build.finalName}.jar" dest="${rhq.deploymentDir}" overwrite="false">
                         <patternset>
                            <include name="META-INF/**" />
                         </patternset>
                      </unjar>
                   </tasks>
                </configuration>
                <goals>
                   <goal>run</goal>
                </goals>
             </execution>

             <execution>
                <id>undeploy</id>
                <phase>clean</phase>
                <configuration>
                   <tasks>
                      <property name="deployment.dir" location="${rhq.deploymentDir}" />
                      <echo>*** Deleting ${deployment.dir}${file.separator}...</echo>
                      <delete dir="${deployment.dir}" />
                   </tasks>
                </configuration>
                <goals>
                   <goal>run</goal>
                </goals>
             </execution>

          </executions>
       </plugin>
于 2011-04-20T11:06:42.430 回答
1

默认情况下,在 Super POM 中声明的文件夹已被您的 pom.xml 继承。

 <build>

 <directory>${project.basedir}/target</directory> 

</build>

您可以通过以下方式在 pom.xml 中更改它:

 <build>
 <directory>${project.basedir}/yourFolder</directory>

</build>
于 2011-04-20T11:07:58.843 回答