2013-01-21 87 views
4

螞蟻警告我這裏很容易螞蟻其所產生的Eclipse報告警告:忽略與評論

<ivy:cachepath pathid="path.pmd" organisation="pmd" module="pmd" revision="4.3" conf="default" inline="true" /> 
<taskdef name="pmd" classname="net.sourceforge.pmd.ant.PMDTask" classpathref="path.pmd" /> 

報道的問題是:

Description      Resource Path Location Type 
Reference path.pmd not found. build.xml /MyPrj line 20  Ant Buildfile Problem 

現在是很清楚是什麼發生在這裏。 Ant沒有在常青藤的緩存路徑任務中看到path.pmd,並創建警告。 現在我想忽略這個警告。但是,我不想在Eclipse中使用Ant偏好來忽略警告。我知道這很容易,但這也意味着有一天,當我真的有缺失的參考時,我不會得到警告。

螞蟻有評論風格忽略?就像在PMD中一樣,您可以使用// NOPMD忽略指定行上的任何警告。如果有,請賜教:)

如果沒有,是否有任何其他方法可以從Ant構建文件中的此特定行中刪除此警告。

任何幫助,將不勝感激。

回答

1

我認爲喜好是,即使你不想,看看這個,也許你會發現在幾個環節別的東西走的關鍵是:

How to tell Eclipse to ignore errors in an Ant build.xml?

我發現這個從結:

「的另一個解決方法(較溫和的比禁用所有驗證/問題報告):去窗口 - >首選項 - > Ant->問題選項卡添加‘的build.xml’忽略列表...」

1

你的問題的答案是否定的。

它,但是,可以使用屬性來切換目標開啓/關閉如下:

<target name="resolve-ivy" if="use.ivy"> 
    <ivy:cachepath pathid="path.pmd".... 
</target> 

<target name="resolve-ant" unless="use.ivy"> 
    <path id="path.pmd"> 
     <pathelement location="/path/to/pmd/jar/pmd.jar"/> 
    </path> 
</target> 

<target name="create-tasks" depends="resolve-ivy,resolve-ant"> 
    <taskdef name="pmd" classname="net.sourceforge.pmd.ant.PMDTask" classpathref="path.pmd" /> 
</target> 

因此,如果財產「use.ivy」設置,那麼您的構建將使用ivy下載編譯依賴。

我有一些意見....

這是真的警告忽略?

爲什麼你會使用兩種機制來管理你的構建的類路徑?

如果您正在使用Eclipse,可能會使用Eclipse plugin和外部ivy.xml來調查項目的依賴關係。這種方法會同步ANT和Eclipse使用的類路徑。

在Maven的中央

常春藤PMD模塊是拉動從Maven的中央錯誤的模塊。 PMD的最新版本是5.0。1:

我建議以下替代常春藤任務配置

<ivy:cachepath pathid="path.pmd"> 
    <dependency org="net.sourceforge.pmd" name="pmd" rev="5.0.1" conf="default"/> 
</ivy:cachepath> 

注:

你認爲Sonar?

一個可以簡單的方法來啓用PMD將使用Sonar ANT task,它也將使用Findbugs和Checkstyle分析您的代碼。

這個任務也可以用常春藤檢索:

<ivy:cachepath pathid="path.sonar"> 
    <dependency org="org.codehaus.sonar-plugins" name="sonar-ant-task" rev="2.0" conf="conf"/> 
</ivy:cachepath> 
0

前往窗口 - >首選項 - > Ant->問題選項卡。將「build.xml」添加到忽略列表。 這應該可以解決你的問題。