これは働いていた私の古いPOMから<build>
タグです:PROD、DEV、テスト:MavenのPOMマルチ環境profiels
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.0</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-eclipse-plugin</artifactId>
<version>2.9</version>
<configuration>
<wtpversion>2.0</wtpversion>
<downloadSources>true</downloadSources>
<downloadJavadocs>true</downloadJavadocs>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.axis2</groupId>
<artifactId>axis2-wsdl2code-maven-plugin</artifactId>
<version>1.6.2</version>
</plugin>
</plugins>
<finalName>test</finalName>
</build>
今私はすべての段階のための3つの異なるapi.propertiesファイルを持っていると思います。そこで、私は先に進み、maven用のチュートリアル<profile>
をたどりました。これは私がちょうどPRODおよびテスト段階のために(完全に古い<build>
タグを削除する)になってしまったものです:
<profiles>
<profile>
<id>test</id>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.0</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
<tasks>
<delete file="${project.build.outputDirectory}/api.prod.properties" />
<delete file="${project.build.outputDirectory}/api.dev.properties" />
<copy file="src/main/resources/api.test.properties"
tofile="${project.build.outputDirectory}/api.properties" />
</tasks>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-eclipse-plugin</artifactId>
<version>2.9</version>
<configuration>
<wtpversion>2.0</wtpversion>
<downloadSources>true</downloadSources>
<downloadJavadocs>true</downloadJavadocs>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.axis2</groupId>
<artifactId>axis2-wsdl2code-maven-plugin</artifactId>
<version>1.6.2</version>
</plugin>
</plugins>
<finalName>test</finalName>
</build>
</profile>
<profile>
<id>prod</id>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.0</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
<tasks>
<delete file="${project.build.outputDirectory}/api.test.properties" />
<delete file="${project.build.outputDirectory}/api.dev.properties" />
<copy file="src/main/resources/api.prod.properties"
tofile="${project.build.outputDirectory}/api.properties" />
</tasks>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-eclipse-plugin</artifactId>
<version>2.9</version>
<configuration>
<wtpversion>2.0</wtpversion>
<downloadSources>true</downloadSources>
<downloadJavadocs>true</downloadJavadocs>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.axis2</groupId>
<artifactId>axis2-wsdl2code-maven-plugin</artifactId>
<version>1.6.2</version>
</plugin>
</plugins>
<finalName>test</finalName>
</build>
</profile>
</profiles>
本当にしかし、動作しないこと。私が望む3つの戦争(test-prod.war、test-dev.war、...)ではなく、1つの.warを生成し、生成された戦争には3つの.propertiesファイルがすべて含まれます。なぜ、私はそれを修正するために行うことができますか?私はかなり新しい人です...ありがとう!
を参照することができますか? 3つのプロファイルがすべて選択されていますか?これらのプロファイルを1回ずつ実行すると、3つの異なる成果物が提供されます。 – Abaddon666
@ Abaddon666:私はいつものように、私のEclipseにmaven installをインストールしています...どうすれば "違う"ことができますか? – Shiuyin
私は通常、コマンドラインからmavenビルドを実行しています。テストプロファイルを実行するための 'mvn clean install -Ptest'。それ以外の場合は、使用しているメイヴンプラグインのプロファイルを選択する方法をgoogleに登録してください – Abaddon666