我正在使用Maven 3.0.3。在打包WAR文件之前,我想運行一個任務來複制特定於環境的屬性。以下是我的任務。我的任務使用什麼階段?
<plugin>
<artifactId>maven-antrun-plugin</artifactId>
<executions>
<execution>
<phase>prepare-package</phase>
<goals>
<goal>run</goal>
</goals>
<configuration>
<tasks>
<delete file="${project.build.outputDirectory}/environment.properties"/>
<copy file="src/main/resources/${env}_environment.properties"
tofile="${project.build.outputDirectory}/environment.properties" />
<delete file="${project.build.outputDirectory}/${env}_hibernate.cfg.xml"/>
<copy file="src/main/resources/${env}_hibernate.cfg.xml"
tofile="${project.build.outputDirectory}/hibernate.cfg.xml" />
<echo message="Copied ${env}_hibernate.cfg.xml properties. " />
</tasks>
</configuration>
</execution>
</executions>
</plugin>
然而,當啓動我的應用程序,從我的Tomcat的配置文件調用的目標,通過運行「MVN -P tomcat的tomcat的:運行」,上面的任務沒有得到運行。任何想法如何我可以糾正這一點?下面是我包含的Tomcat配置文件。 - 戴夫
<profile>
<id>tomcat</id>
<activation>
<property>
<name>env</name>
<value>dev</value>
</property>
</activation>
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>tomcat-maven-plugin</artifactId>
<version>1.1</version>
<configuration>
<charset>UTF-8</charset>
<path>/leadsmonitor</path>
<server>nnadbmon-tomcat</server>
<update>true</update>
<url>http://nnadbmon.mydomain.com:8080/manager</url>
<warFile>target/leadsmonitor.war</warFile>
<systemProperties>
<JAVA_OPTS>-Xms256m -Xmx512m -XX:MaxPermSize=256m -XX:NewRatio=6 -XX:+CMSClassUnloadingEnabled -XX:+CMSPermGenSweepingEnabled -verbose:gc"</JAVA_OPTS>
</systemProperties>
</configuration>
</plugin>
</plugins>
</build>
</profile>
附加什麼到編譯階段? – Dave
對不起,我指的是ant-run-plugin。這應該爲你做。 – carlspring