2012-02-21 74 views
2

標題可能不是最好的,所以讓我解釋我想要做什麼。動態basedir爲螞蟻在日食

我製作了一個Ant構建文件,可以幫助我實現Maven的目標。如果要將範圍擴展到Ant視圖並選擇我想要執行的操作,則更容易。這樣做的最大好處是我幾乎可以在任何項目中使用它。無論我部署到tomcat或jboss或sakai(:deploy),還是我處理同一臺服務器的多個instaces或跳過測試......最壞的情況我只是改變一些路徑屬性。

現在的缺點是我必須在每個項目中都保留一份這個構建文件的副本。

我想要做的是在工作區中只有1個buildfile,並且在eclipse中dinamicaly optain,這是我正在開發的當前項目。無論是模塊還是家長,我都可以稍後改進。 所以基本上根據eclipse中選定的項目改變ant任務的基礎。

我已經試過螞蟻運行屬性,但對於像

$ {} project_path

某種原因,性質不給我其描述說什麼。我得到這個:

變量引用空選擇:$ {} project_path

我希望這是清楚什麼,我試圖做的。所以我的問題,我知道這是可能的,我只是錯過了一些東西,我希望你們中的一些人可以幫助我。

我相信麻煩是在Ant運行時屬性。我不是100%確定我應該如何使用這些。

謝謝!

回答

6

意見和進一步調查後編輯 ...
使可作爲BASEDIR財產PROJECTDIR螞蟻那樣:
Window > Preferences > Ant > Runtime > Properties
並創建一個屬性命名BASEDIR與價值之一:

${project_loc}

${workspace_loc}/${project_name}

<project basedir="${basedir}"> 
<echo>$${basedir} = ${basedir}</echo> 
</project> 

會達到預期效果,意味着呼應日食/ yourworkspace/PROJECTDIR

可能還有其他的方式,即通過Ant Addon Ant4Eclipse,其目的是使可用於Eclipse的Ant設置,從來沒有使用過。

+0

如果我理解正確,這意味着當我添加一個新項目時,我只需要更改'NameOfYourProject'一次。雖然這可能工作,但這不完全是我想要的。感謝您的答覆。 讓我強調我不明白,我相信它會幫助我找到答案:爲什麼不知道我正在工作的當前項目,並給了我'變量引用空選擇:$ {project_path}'當我使用$ {project_path}或$ {project_loc}?_ – Cristian 2012-02-22 07:19:15

+0

適用於Eclipse 3.7.1的WindowsXP/32bit/jdk1.6.0_30和Windows7/64bit/jdk1.7.0_02以及Eclipse 3.6.2和OpenSuse11 .4/64bit/1.6.0_29我沒有收到類似「變量引用...」的消息。問題:如何在Eclipse中啓動您的ant文件?哪個操作系統,Eclipse版本,Java版本? – Rebse 2012-02-22 20:02:30

+0

我從Ant View開始。我在那裏添加了構建文件。我只是選擇我想要運行的任務,然後單擊。現在我正在使用Java 1.5_18和Eclipse Classic 3.4.1。升級不是一個選項,因爲我正在使用舊的Sakai工具。我確實嘗試了更新版本的Java和Eclipse Indingo,但是在部署該工具後我得到了奇怪的結果。 – Cristian 2012-02-23 11:13:54