2012-03-01 1 views
0

Итак, я начал использовать FlexPMD для анализа статического кода, и я хочу добавить его в процесс сборки моей команды. У меня он работает хорошо из сценария оболочки и может просматривать результаты, нажав кнопку и выгружая нужный файл (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 парами, например, так:

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

, но это не работает для меня. Кто-нибудь столкнулся с этой проблемой и победил, случайно?

EDIT: Подробнее ... Последнее (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(); 

, который он проходит в FlashVars. Возможно, формат, с которым я проходил 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-файл (напрямую пытается сохранить из браузера не будет работать - по-видимому, перенаправить на нулевой адрес), чтобы выглядеть примерно так:

локон -О http://opensource.adobe.com/svn/opensource/flexpmd/bin/flex-pmd-violations-viewer-1.1.swf

и место в том же каталоге, что и файл HTML нарушения просмотра загруженного вами. Затем вы можете читать свои отчеты автоматически! Вот пример (абсолютный путь к файлу на Mac):

файл: ///path/to/your/violations-viewer/ViolationsViewer.html? Report =/Пользователи/joverton/some/project/path/bin-debug /pmd_reports/pmd.xml

Смежные вопросы