2012-08-02 65 views
1

我從來沒有見過這種奇怪的 -螞蟻目標不存在,但被執行

我是爲維護項目中,我得到了一個build.xml,我從來沒有安裝螞蟻。螞蟻捆綁到項目中,所以我用 -

ant deploy_project。

但是當我看着build.xml我找不到任何名爲「deploy_project」的目標。

任何人都可以幫助我如何執行「deploy_project」目標而不在build.xml中存在此目標?

我懷疑由於我自己並沒有安裝ant,並且與項目捆綁在一起,螞蟻的任何配置都可能被覆蓋...但如何找到它是我卡住的地方,任何人都可以幫助我?

(我相信目標不在build.xml中)。

感謝提前。

回答

0

如果你是確保目標不存在,而你沒有指定使用-f選項生成文件,那麼只有1條的解釋我能想到的 -

你的ANT_HOME是別的地方,會有那裏有另一個build.xml。

(檢查最快的方法就是找到它 - SET for Windowsecho $PATH for Unix),找到ANT_HOME的值,並在同一目錄下,一個build.xml會出現與你的* 看不見 *目標


如果您已經搜索了C:驅動器,仍然無法找到任何build.xml,那麼您擁有的捆綁ANT可能是自定義的或ANT包裝器。含義有一個名爲ant.bat的.bat文件,它接受deploy_project作爲參數,然後使用變量替換將其映射到另一個任務。因此,請查找批處理文件ant.bat或任何標題爲ant的文件。

+0

我在CMD上使用set命令檢查了ant_home,但它沒有列出Ant_Home變量。另外,我在我的C盤上搜索了一個名爲build.xml的文件,看是否有任何build.xml有這個目標,但是找不到任何東西。 – user1570768 2012-08-02 10:14:03

+0

檢查變量PATH ..它可能包含一些類似Path =「C:\ .. \ .. \ .. ant1.xy \ – 2012-08-02 10:15:13

+0

對不起,此主題仍處於打開狀態,請發表評論 – user1570768 2012-08-02 10:15:41

2

運行以下命令:

$ ant -p 

build.xml這通常會打印出所有的目標。或者至少有描述的那些。

build.xml中也查找<import file="...">陳述。這些允許您導入其他可以包含不在build.xml中的目標的Ant構建文件。我懷疑,如果您在build.xml中搜索字符串deploy_project,並且您無法通過該名稱找到目標,則您的build.xml中有某處存在導入語句,因此請搜索<import

+0

謝謝!我已經能夠在導入的其中一個build.xml文件中找到它。非常感謝! – user1570768 2012-08-03 18:00:31