воскресенье, 27 января 2013 г.

[Заметка] Статический анализ кода на Java: Sonar и Maven

Вкратце о том как подключить Sonar к вашему проекту на Maven.
Чтобы ваш проект попал в сонар по дефолту достаточно просто выполнить команду
mvn sonar:sonar
Проблема в том что для выполнения этой команды сонару нужно знать дополнительно несколько вещей, а именно:
  • Язык вашего проекта: sonar.language
  • Адрес сайта сонара: sonar.host.url
  • Настройки БД сонара: sonar.jdbc.url, sonar.jdbc.driver, sonar.jdbc.username,sonar.jdbc.password

Язык вашего проекта и адрес сайта это публичная информация и указываем их прямо в pom.xml файле:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
...
    <properties>
        <sonar.language>java</sonar.language>
        <sonar.host.url>http://sonar.example.com:9000/</sonar.host.url>
    </properties>
...
</project>


Настройки БД не должны быть видны народу поэтому мы устанавливаем их в settings.xml
<profile>
   <id>sonar</id>
   <activation>
      <activebydefault>true</activeByDefault>
   </activation>
   <properties>
      <sonar.jdbc.url>jdbc:postgresql://localhost/sonar</sonar.jdbc.url>
      <sonar.jdbc.driver>org.postgresql.Driver</sonar.jdbc.driver>
      <sonar.jdbc.username>user</sonar.jdbc.username>
      <sonar.jdbc.password>password</sonar.jdbc.password>
   </properties>
</profile>

После этого запускаем mvn sonar:sonar

Ещё годная статья по теме

Комментариев нет:

Отправить комментарий