2012-03-01 21 views
0

因此,我開始使用FlexPMD進行靜態代碼分析,並且希望將其添加到我的團隊的構建過程中。我已經從shell腳本中很好地運行了它,並且可以通過單擊按鈕並在違反查看器中隨附上載所需的(pmd.xml)輸出文件來查看結果(請注意,這裏還有一個在線:http://opensource.adobe.com/svn/opensource/flexpmd/bin/flex-pmd-violations-viewer.html)。FlexPMD Violations Viewer - 如何直接查看結果

但我想直接查看結果,而不必採取額外的步驟來點擊上傳按鈕。我想有一些黑魔法URL參數可行,但是(如果有的話)是什麼?此網站:

http://blogs.adobe.com/xagnetti/2009/09/load_pmd_results_directly_in_t.html

提到引用pmd.xml與 「報告」 URL PARAM,就像這樣:

http://opensource.adobe.com/svn/opensource/flexpmd/bin/flex-pmd-violations-viewer.html?report=path/to/my/pmd.xml

,但它不是爲我工作。有沒有人偶然遇到過這個問題並獲得勝利?

編輯:更多信息... 後者(opensource.adobe.com ...)的網頁上具有以下JavaScript:

function getReport() 
{ 
    if (window.location.href.indexOf('=') == -1) 
    { 
     return ""; 
    } 
    var hashes = window.location.href.slice(window.location.href.indexOf('=') + 1); 

    return hashes; 
} 

var report = getReport(); 
它傳遞到Flash變數

。也許我傳遞pmd.xml的格式不正確?

回答

0

好吧,算出來。開源FlexPMD附帶的違例查看器版本不允許自動查看報告(HTML包裝器不會通過報告文件路徑,並且SWF也不會將其納入)。爲我工作的解決方案是從網上侵犯查看器這裏下載文件:

http://opensource.adobe.com/svn/opensource/flexpmd/bin/flex-pmd-violations-viewer.html?report=path/to/my/pmd.xml

通過使用瀏覽器剛剛保存的網頁,然後捲曲保存SWF文件(直接試圖挽救從瀏覽器將無法正常工作 - 似乎重定向到一個空的地址),像這樣:

捲曲-O http://opensource.adobe.com/svn/opensource/flexpmd/bin/flex-pmd-violations-viewer-1.1.swf

,並在同一目錄下,你下載的侵犯觀衆的html文件的地方。然後你可以自動閱讀你的報告!這裏是一個例子(Mac上的絕對路徑):

file:///path/to/your/violations-viewer/ViolationsViewer.html?report =/Users/joverton/some/project/path/bin-debug /pmd_reports/pmd.xml