Как экспортировать правила FindBugs / PMD / Checkstyle из Sonar и импортировать в Netbeans

Моя компания использует сонар с различными плагинами (PMD, FindBugs, CheckStyle), и хотя он очень полезен как есть (он работает после каждой сборки Jenkins, которая запускалась при регистрации в SVN), я бы хотел, чтобы я мог запускать эти различные плагины на моем локальном компьютере, прежде чем проверять код.

У нас есть набор правил, уже настроенных в Sonar, поэтому в идеале я хотел бы иметь возможность экспортировать этот набор правил, возможно, сделать что-нибудь изменение данных, а затем импортировать полученные правила в мою среду IDE (Netbeans 7.0.1) в соответствующие плагины. Есть какой-либо способ сделать это? Я искал повсюду, не просматривая и не добавляя вручную каждое правило в различные плагины, похоже, нет способа сделать это. Что-то мне не хватает?

TL; DR (сводка): я хочу экспортировать профиль из сонара и импортировать настройки правила в подключаемые модули PMD, Findbugs и CheckStyle в Netbeans.


person jalsk    schedule 16.11.2011    source источник
comment
А как насчет плагина Resharper / StyleCop? Постоянная ссылка предоставляет только файл xml, который я не могу импортировать в инструменты.   -  person Camal    schedule 22.04.2015


Ответы (4)


Каждый профиль сонара публикует свои настройки Checkstyle, FIndbugs и PMD на вкладке постоянные ссылки.

Предполагая, что вы установили Sonar локально, по следующей ссылке показаны файлы конфигурации, используемые профилем «Sonar Way»:

http://localhost:9000/profiles/permalinks/2

person Mark O'Connor    schedule 16.11.2011

Вам не нужна собственная установка сонара. Вы можете получить конфигурацию любого из встроенных профилей качества Sonar на сайте Sonar Nemo:

Существует около десятка профилей качества Java. Часто используемый профиль - Sonar way с Findbugs - доступен по адресу:

http://nemo.sonarsource.org/rules_configuration/index/135

Первоначальное представление профиля просто перечисляет все правила. Не используйте ссылку «Загрузить» в этом представлении. Это просто дает вам CSV-список объединенных правил для всех инструментов. Полезно для обзора, но не то, о чем вы просите.

Чтобы экспортировать конфигурацию конкретного инструмента, выберите вкладку / представление «Постоянные ссылки». Эти ссылки возвращают файл конфигурации в форме, ожидаемой каждым инструментом. Например, вот ссылка на XML-файл конфигурации FindBugs:

http://nemo.sonarsource.org/profiles/export?format=findbugs&language=java&name=Sonar%2520way%2520with%2520Findbugs

person Xris - Flatbush Gardener    schedule 21.11.2012
comment
Есть некоторые преимущества в запуске локального сервера для использования профиля, отличного от профиля, предоставляемого централизованным сервером. Это особенно верно в очень крупных организациях, где сложно настроить сервер Sonar (или любой другой тип ресурса в этом отношении) в соответствии с потребностями группы. Или когда разработчики экспериментируют с разными профилями, прежде чем давать рекомендации по обратной интеграции в централизованные профили. - person luis.espinal; 12.02.2015

SonarLint - это более новый плагин, который больше не поддерживает профили Checkstyle / PMD / FindBugs. Все должно быть перенесено на правила squid и настроено на сервере SonarQube в разделе «Профили качества». Вам необходимо подключиться к серверу в режиме подключения и установить собственный профиль качества по умолчанию, чтобы локальный анализ выявлял проблемы, связанные с вашим профилем качества. Дополнительную информацию о подключаемом модуле SonarLint и подключенном режиме можно найти на странице http://www.sonarlint.org/eclipse/index.html#Connected

person Kranthi Kurra    schedule 14.10.2016

Другой простой механизм - это использование: Резервное копирование / восстановление профиля См .: http://docs.sonarqube.org/display/SONAR/Profile+Existence+Edits

Резервное копирование из экземпляра (источника) даст вам файл backup.xml на вашем локальный компьютер, а затем на другом экземпляре (месте назначения) вы можете восстановить его.

person fly2matrix    schedule 09.07.2015
comment
Страница, которую вы ищете, не существует. - person mirec; 16.12.2016