リソースをフィルタリングするために外部プロパティファイルを読み取るmavenプロジェクトがあります。これは mvn パッケージを使用する場合は正常に機能しますが、JUnit テストから開始すると、プロパティ ファイルではなく pom 自体でプロパティが宣言されている場合にのみ機能するため、プラグインの構成に問題があると思います。私は私のpomでこれを手に入れました:
<plugin>
<groupId>org.eclipse.m2e</groupId>
<artifactId>lifecycle-mapping</artifactId>
<version>1.0.0</version>
<configuration>
<lifecycleMappingMetadata>
<pluginExecutions>
<pluginExecution>
<pluginExecutionFilter>
<groupId>org.codehaus.mojo</groupId>
<artifactId>properties-maven-plugin</artifactId>
<versionRange>[1.0-alpha-2,)</versionRange>
<goals>
<goal>read-project-properties</goal>
</goals>
</pluginExecutionFilter>
<action>
<execute />
</action>
</pluginExecution>
</pluginExecutions>
</lifecycleMappingMetadata>
</configuration>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>properties-maven-plugin</artifactId>
<version>1.0-alpha-2</version>
<executions>
<execution>
<phase>initialize</phase>
<goals>
<goal>read-project-properties</goal>
</goals>
<configuration>
<files>
<file>${build.properties.file}</file>
</files>
</configuration>
</execution>
</executions>
</plugin>
ライフサイクルは、Eclipse で赤くマークされています。
編集:
m2e 部分はプラグイン管理で囲む必要があり、エラーはなくなりました。Maven 設定でゴールが実行されていることがわかります。
しかし、このプラグインを使用すると、Eclipse から単体テストを実行するときに、実際にはまだリソースがフィルタリングされません。だから、これはまだ開いています;)