0
在使用Ant進行編譯時,我的Java應用程序提供了1000多條警告(主要是因爲這是一個遺留代碼而被棄用的API相關),並且很難找到與千位數混合的錯誤消息在日誌中消息的警告。Ant,分離警告和錯誤
我試圖通過在Ant的javac任務中傳遞參數來壓制警告,但沒有奏效。
是否有任何選項可以將日誌中的警告和錯誤分開,如首先發出所有警告,然後發生錯誤?
在使用Ant進行編譯時,我的Java應用程序提供了1000多條警告(主要是因爲這是一個遺留代碼而被棄用的API相關),並且很難找到與千位數混合的錯誤消息在日誌中消息的警告。Ant,分離警告和錯誤
我試圖通過在Ant的javac任務中傳遞參數來壓制警告,但沒有奏效。
是否有任何選項可以將日誌中的警告和錯誤分開,如首先發出所有警告,然後發生錯誤?
警告由javac顯示,Ant只是將它們轉發到控制檯。 Ant無法區分它們在javac警告和錯誤之間。但是您可以配置javac警告輸出。您可以在javac任務中使用屬性'nowarn'。
<javac nowarn='on' .... />
您也可以選擇確切地禁止哪個警告。然後您可以查看javac documentation(查看Xlint選項),並使用javac任務的'compilerarg'元素。
<javac .... >
<compilerarg line="-Xlint:-deprecation"/>
</javac>
因爲使用sun。*包而被棄用,我得到了警告。 不會抑制這樣的警告。參考http://stackoverflow.com/questions/13855700/suppress-javac-warning?rq=1 –
Abhilash
是否有可能將javac的輸出傳遞給另一個ant任務來分離警告?是否有任何現有的任務要重用? – Abhilash
您可以使用'exec'任務手動啓動javac,然後使用'outputproperty'來捕獲輸出。然後用'loadresource'資源任務,一個'property'資源和一個filterchain,一些東西可能正在工作。但是這會很有啓發性,而且很容易出錯。我不會推薦。 –