2013-03-28 34 views
1

我對Ant或Maven的經驗很少,但我正試圖簡化我正在開發的項目的構建過程。我使用IntelliJ Idea進行Java開發,並且我希望將Ant用於自動構建,因爲IntelliJ可以自動生成我的構建腳本(然後可以調整以滿足我的需要)。我沒有在Git中保留所有的依賴關係jar(我將運行自動化構建的服務器將定期從repo中取出以自動構建),但我想使用Maven在pom.xml中聲明依賴項,並且讓Ant使用maven-ant-tasks爲我自動下載這些依賴關係。Maven和Ant在IntelliJ的想法中,下載依賴關係

說的IntelliJ IDEA似乎我在運行的問題是不喜歡在我的Ant構建腳本所需

<artifact:pom ...></artifact:pom> 

元素......即使安裝Maven的螞蟻任務的jar文件放進我的後ant/libs文件夾,並按照this answer from the Jetbrains forum中的建議將Jar聲明爲外部DTD。我懷疑我對Ant的經驗不足可能是一個問題(例如,我的項目中有多個模塊,每個模塊都有自己的Ant文件和pom文件,我必須在這些步驟中執行這些步驟嗎?所有這些文件?),而且我也懷疑Idea在這裏有一個bug。你們有沒有完成過這項任務,以及如何?

回答

2

我從來沒有玩過IntelliJ的「generate ant build ...」。但是你的方法似乎過於複雜。

Maven適用於解決依賴關係,但也是構建項目的適當工具。一般來說ant不是必需的(除非你的構建過程有點複雜)。

所以,在我看來,你應該嘗試用maven構建你的項目。如果你的項目構建起來非常複雜,你可以調用一些ant任務來完成你的構建的更復雜/複雜/特殊的步驟。但要確保maven是主人:maven能夠使用maven-antrun-plugin來調用ant任務。

根據我的經驗:maven-antrun-plugin比maven-ant-tasks更容易使用。

此外,如果您的項目正確mavenized,它將與IntelliJ工作非常順利。

+0

我不以任何方式與Ant結婚,我只是不知道Maven可以用來做完整的構建。你知道任何使用Maven生成和運行完整構建的優秀教程嗎? –

+2

看看這個http://www.sonatype.com/books/mvnref-book/reference/ – ben75