2012-07-20 144 views
18

我有一個我用Netbeans編譯的maven項目。我有一種方法來指定一個不同的編譯目錄,其中編譯後的二進制代碼被複制?如何更改maven構建目錄?

+2

最佳答案我發現:要爲WAR指定輸出路徑http://stackoverflow.com/a/12598554/520567 – akostadinov 2013-07-12 14:42:57

+0

同意,使用POM配置文件絕對是IMO最靈活和最強大的解決方案。 – DuffJ 2015-04-30 09:44:50

回答

15
<project> 
    <build> 
    <outputDirectory>target/classes</outputDirectory> 
    </build> 
</project> 
+2

我測試了它 - 編譯後的文件被移到那裏。我想爲最終的WAR包指定構建目錄。 – user1285928 2012-07-20 22:03:55

+0

好的,你需要的只是[here](http://maven.apache.org/plugins/maven-war-plugin/war-mojo.html)。我不覺得你需要設置什麼(我雖然是編譯的東西目錄),所以選擇你需要的東西。 – 2012-07-23 06:47:36

15

當然。

<build> 
    <directory>my_new_build_path</directory> 
</build> 

第2部分:與更新您的POM

<plugin> 
    <groupId>org.apache.maven.plugins</groupId> 
    <artifactId>maven-war-plugin</artifactId> 
    <version>2.0</version> 
    <configuration> 
     <warName>test-web-app</warName> 
     <outputDirectory>my_output_path</outputDirectory> 
    </configuration> 
</plugin> 
+0

如果我只將它放在我的父POM文件上,這是否適用於每個子maven項目? – user1285928 2012-07-20 22:09:26

+0

好點。具有此設置意味着每個模塊的構建目錄是相同的,而不是每個模塊一個目錄。 – Reimeus 2012-07-20 22:15:28

+0

我忘了寫我沒有包含'maven-war-plugin'的包。我也有'maven-compiler-plugin'。我如何配置它來更改輸出目錄? – user1285928 2012-07-20 22:40:02