私はここで非常にばかげた問題に直面しています.warファイルを構築するために使用されています.別の環境で動作するようにpom.xml
導入しました.しかし問題は、ビルドを作成するときに、下にあるプロファイルの正しいビルドディレクトリを作成することです.注文するprofile
(dev/prod)
pom.xml
ここで何が問題なのか支援してください。
<build>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.6</source>
<target>1.6</target>
</configuration>
</plugin>
</plugins>
</pluginManagement>
</build>
<profiles>
<profile>
<activation>
<property>
<name>lifecycle</name>
<value>prod</value>
</property>
</activation>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>2.1.1</version>
<configuration>
<warSourceExcludes>**login.jsp</warSourceExcludes>
</configuration>
</plugin>
</plugins>
<directory>target/${lifecycle}</directory>
<finalName>testapp</finalName>
<resources>
<resource>
<directory>src/main/resources/${lifecycle}</directory>
</resource>
</resources>
</build>
</profile>
<profile>
<activation>
<property>
<name>lifecycle</name>
<value>dev</value>
</property>
</activation>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>2.1.1</version>
</plugin>
</plugins>
<directory>target/${lifecycle}</directory>
<finalName>testapp</finalName>
<resources>
<resource>
<directory>src/main/resources/${lifecycle}</directory>
</resource>
</resources>
</build>
</profile>
</profiles>
正しいビルド ディレクトリは
-Dlifecycle=dev の場合
target/dev/testapp/
-Dlifecycle=prod の場合
target/prod/testapp/
しかし、ここで「target/testapp-xx.x」を取得します
なぜこの異なる動作ですか?
ビルドをトリガーするコマンド:mvn clean install -Dlifecycle=prod