2010-11-19 90 views
24

我有一個使用Maven構建的Eclipse項目,我使用Eclipse內部的m2eclipse插件來支持Maven。如何讓Eclipse忽略Ant build.xml中的錯誤?

但是,該項目還包含一個build.xml,它不用於實際構建項目,而僅用於爲項目開發人員提供腳本功能 - 它不用於構建或打包產品(僅用於自動化一些開發人員經常不得不在側面調用的側面任務)。

無論何時在Eclipse中的編輯器中打開此文件,Eclipse都會注意到它認爲是build.xml中某些缺少聲明的問題,並開始顯示項目錯誤(在Problems視圖中)以及紅色X項目的圖標/標記顯示存在構建錯誤。這些都不是build.xml的真正問題,只是Eclipse認爲存在的一些問題,因爲它無法導入build.xml正在使用的所有其他依賴文件。這個項目沒有「構建」錯誤,只是Eclipse中的錯誤(無窮智慧)能夠解析用於輔助目的的build.xml

有沒有什麼辦法告訴Eclipse忽略一個build.xml或忽略特定項目中的Ant警告?我是否需要從項目屬性的Builders選項卡中刪除Java Builder

回答

32

窗口 - >首選項 - >螞蟻 - >編輯 - >問題(表)
檢查 '忽略所有構建文件問題'

+0

這將設置全局偏好 - 我想仍然在真正使用Ant進行構建的項目中出現這些錯誤。你知道只有一個項目禁用它的方法,告訴Eclipse,Ant不是用作此項目構建過程的一部分嗎? – 2010-11-19 16:34:53

+0

選擇一個項目併爲該項目設置特定設置 – Bivas 2010-11-19 16:41:34

+2

單個項目的項目屬性中沒有「Ant」首選參數或選項卡 – 2010-11-19 16:42:40

6

前往窗口 - >首選項 - > Ant->問題選項卡。將「build.xml」添加到忽略列表中。

我發現此解決方法here

但是我的建議是(如果可能)先重命名你的build.xml文件,然後只把這個新的build-filename加到忽略列表中。然後避免忽略eclipse工作區中的所有其他build.xml文件。這就是我如何使用它:-)

1

我發現了另一個解決方法使用antcontrib任務if - 我已經包含在我們的建設框架「虛擬-環繞」

<target ...> 
    <if><istrue value="on" /><then> <!-- remove annoying "tst.local.ant.targets.show.out doesn't exist" warning in Eclipse Problems view and Ant View --> 
    <loadfile property="in" srcfile="${tmpOut}.out"> 
     <filterchain><expandproperties/></filterchain></loadfile> 
    </then></if> 
    ... 
</target> 
1

使用javac選項

failonerror = 「假」

<javac includeantruntime="false" srcdir="${src}" destdir="${build}" failonerror="false"/>