Maven プロジェクトのさまざまなフォルダーをテストしたいのですが、maven のproject.build.testSourceDirectory
プロパティを変更する必要があります。
この問題には Maven プロファイルを使用しています。
私のプロフィールは次のようになります。
<profiles>
<profile>
<id>sahi_UI_testing</id>
<activation>
<property>
<name>sahiTesting</name>
<value>true</value>
</property>
</activation>
<properties>
<maven.test.skip>false</maven.test.skip>
<project.build.testSourceDirectory>src/test/java/org/package1/package2/sahi</project.build.testSourceDirectory>
</properties>
</profile>
</profiles>
はproject.build.testSourceDirectory
変更されず、デフォルトのままです/home/username/workspace/projectName/core/src/test/java
(これをテストしてmaven-antrun-plugin
そのパスを提供しました)。
プロジェクトに複数の pom.xml があるため、パスには ../core/.. フォルダーがあります (これはプロジェクトのコア pom.xml です)。
maven-antrun-プラグイン:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.1</version>
<executions>
<execution>
<phase>validate</phase>
<goals>
<goal>run</goal>
</goals>
<configuration>
<tasks>
<echo>******** Displaying value of property ********</echo>
<echo>${project.build.testSourceDirectory}</echo>
<echo>${maven.test.skip}</echo>
</tasks>
</configuration>
</execution>
</executions>
</plugin>
[INFO] Executing tasks [
echo] * * Displaying value of property * * [echo] /home/username/workspace/ projectName
/core/src/test
/
java [ echo
] trueとmvn help:active-profiles -f core/pom.xml -Dtest=JavaClientTest -o -e test -DsahiTesting=true
with this
[INFO] Executing tasks
[echo] * * Displaying value of property * * [echo] /home/username/workspace/ projectName
/core/src/test/java
[echo] false<maven.test.skip>true</maven.test.skip>
maven-antrun-plugin
<maven.test.skip>false</maven.test.skip>
maven-antrun-plugin
したがって、別の変数が変更されたことがわかります。
私はmaven-help-plugin
これを特定していたので、プロファイルがアクティブ化されたことを知っています。
次のmaven-help-plugin
結果が得られます:
次のプロファイルがアクティブです:
- sahi_UI_testing (ソース: pom)
タグ
project.build.testSourceDirectory
のみでプロパティを変更するために、mavenのプロファイルなしで試しました。<build>
...
<build>
<testSourceDirectory>src/test/java/org/package/package2/sahi</testSourceDirectory>
...
</build>
そこでプロパティが変更されました(ただし、そのプロパティに複数の値を割り当てる必要があります)。私も試してみましたが、うまくいきmaven-surefire-plugin
ません。
問題はproject.build.testSourceDirectory
、プロファイルを使用するときに変更されないのはなぜですか?