我有一個要求將我的構建輸出到不同的目錄到目標。m2e忽略測試資源的testOutputDirectory
使用project.build.directory,輸出和testOutputDirectory性工作正常使用mvn clean install
的命令行,但是當我從Eclipse構建它,如果我有一個src/test/resources
目錄中創建一個空的target/test-classes
目錄。
具有相同行爲的一個簡單的POM文件看起來像:
<project>
<groupId>com.example</groupId>
<version>1.0.0</version>
<modelVersion>4.0.0</modelVersion>
<artifactId>reproduce</artifactId>
<packaging>war</packaging>
<properties>
<project.build.directory>differentTarget</project.build.directory>
<project.build.outputDirectory>${project.build.directory}/classes</project.build.outputDirectory>
<project.build.testOutputDirectory>${project.build.directory}/different-test-classes</project.build.testOutputDirectory>
</properties>
<build>
<directory>${project.build.directory}</directory>
<outputDirectory>${project.build.outputDirectory}</outputDirectory>
<testOutputDirectory>${project.build.testOutputDirectory}</testOutputDirectory>
</build>
</project>
我的目錄結構如下:
|-src
|---main
|-----webapp
|-------WEB-INF
|---test
|-----resources
我可以重現行爲的最簡單的方法是用所有的目錄空除了其中包含<web-app />
的web.xml。
當我有實際的測試類時,它會在target/test-classes
目錄內創建文件夾,但會將實際的類文件放入differentTarget/test-classes
。
我使用Eclipse的靛藍,M2E 1.2.0和Maven的集成WTP 0.15.3上Debian的
編輯
如果我刪除properties
和硬輸出代碼:
<build>
<directory>differentTarget</directory>
<outputDirectory>differentTarget/classes</outputDirectory>
<testOutputDirectory>differentTarget/different-test-classes</testOutputDirectory>
</build>
然後我得到正確的行爲,當我去的Maven>更新項目...,但我仍然得到不正確的目標文件夾,當我去項目>清潔或更重要的是有它自動構建。
您是否試過[this](http://www.youtube.com/watch?v=oHg5SJYRHA0)的方法? –
我在其他幾個地方看到過,但在這種情況下沒有用處。 – n00begon