4

私はこのようなマルチモジュールMavenプロジェクトを持っています:

-project
+-sub-project1
+-sub-project2

JUnitテストでは、persistence.xml内に別のファイルを作成しますsub-project1/src/test/resources/META-INF。このプロジェクトはsub-project2の依存関係です。このように、sub-project2のテストでsub-project1と同じtestpersistence.xmlを使用することを期待していましたが、発生しませんでした。

それで、なぜテストフェーズ中にこのファイルを他のサブモジュールに自動的にコピーするようにMavenを作成できるのか疑問に思いました...project/resourcesたとえば、このファイルをフォルダーに入れてからコピーした方が良いかもしれません...

私は誰かがすでにこれをなんとかして機能するように管理していて、私を助けたり、これを行う方法を示したりすることができると思っていました。

前もって感謝します。

4

1 に答える 1

6

私はそれを次のように機能させることができました:

ファイルを作成し、project/assembly/test/resources/META-INF/persistence.xmlこれをpom.xmlに追加します。

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-resources-plugin</artifactId>
    <executions>
        <execution>
            <id>copy-test-persistence-xml-resources</id>
            <phase>process-test-sources</phase>
            <goals>
                <goal>copy-resources</goal>
            </goals>
            <configuration>
                <outputDirectory>src/</outputDirectory>
                <resources>
                    <resource>
                        <directory>${project.parent.basedir}/assembly/</directory>
                        <filtering>true</filtering>
                    </resource>
                </resources>
            </configuration>
        </execution>
    </executions>
</plugin>

それはgracefulltで動作します。

于 2012-08-15T14:13:18.490 に答える