SonarQube не анализирует основной код Java с IntelliJ и Maven - PullRequest
0 голосов
/ 07 октября 2018

Я использую IntelliJ с Maven для своего проекта, и мне нужно проанализировать его с помощью SonarQube, но когда я сканирую свой проект с помощью команды, предоставленной webApp, он анализирует только файл pom.xml, игнорируя остальную часть проекта.

Результаты анализа

чистая установка сонара: sonar -Dsonar.host.url = http://localhost:9000 -Dsonar.login = "соответствующий ключздесь "

Мой pom.xml (что находится внутри тега проекта):

<groupId>cl.itau.simulacionCredito</groupId>
<artifactId>SimulacionCreditoIntelliJ</artifactId>
<version>1.0</version>
<dependencies>
    <dependency>
        <groupId>org.testng</groupId>
        <artifactId>testng</artifactId>
        <version>RELEASE</version>
        <scope>test</scope>
    </dependency>
    <!-- https://mvnrepository.com/artifact/com.beust/jcommander -->
    <dependency>
        <groupId>com.beust</groupId>
        <artifactId>jcommander</artifactId>
        <version>1.72</version>
    </dependency>
</dependencies>
<properties>
    <maven.compiler.source>6</maven.compiler.source>
    <maven.compiler.target>1.6</maven.compiler.target>
</properties>
<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-surefire-plugin</artifactId>
            <version>2.22.0</version>
            <configuration>
                <excludes>
                    <exclude>**/HomeTest.java</exclude>
                    <exclude>**/PropuestaTest.java</exclude>
                </excludes>
            </configuration>
        </plugin>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-deploy-plugin</artifactId>
            <version>3.0.0-M1</version>
        </plugin>
        <plugin>
            <groupId>org.sonarsource.scanner.maven</groupId>
            <artifactId>sonar-maven-plugin</artifactId>
            <version>3.5.0.1254</version>
        </plugin>
    </plugins>
</build>

<distributionManagement>
    <repository>
        <id>SimulacionCredito</id>
        <name>SimulacionCredito</name>
        <url>file:C:\Users\Pc\IdeaProjects</url>
    </repository>
</distributionManagement>

Я также пытался использовать это внутри тега конфигурации:

<sonar.sources>src/main/java</sonar.sources> 

И это произошло:

Второй анализ

Мои файлы settings.xml в конфе Maven:

<pluginGroups>
    <pluginGroup>org.sonarsource.scanner.maven</pluginGroup>
  </pluginGroups>

  <proxies>
  </proxies>

  <servers>
  </servers>

  <mirrors>
  </mirrors>

  <profiles>
    <profile>
       <id>sonar</id>
       <activation>
           <activeByDefault>true</activeByDefault>
       </activation>
       <properties>
           <sonar.host.url>
             http://localhost:9000
           </sonar.host.url>
        </properties>
     </profile>
  </profiles>

Я добавляю вещив POM из-за различных ошибок при попытке исправить это.

У меня установлена ​​последняя версия SonarQube.

Ответы [ 2 ]

0 голосов
/ 07 октября 2018

Итак, проблема заключалась в том, что IntelliJ был сконфигурирован с Java SE Development Kit 11, я перешел на Java SE Development Kit 8u181 и настроил POM, чтобы Maven работал с этим изменением, я снова запустил сканер, и он заработал.

Изменения в pom.xml:

<properties>
    <maven.compiler.source>1.8</maven.compiler.source>
    <maven.compiler.target>1.8</maven.compiler.target>

    <sonar.sources>src/main/java</sonar.sources>
</properties>

добавлено:

<plugin>
   <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-compiler-plugin</artifactId>
         <version>3.8.0</version>
         <configuration>
            <source>8</source>
            <target>8</target>
         </configuration>
</plugin>

Новые результаты анализа

0 голосов
/ 07 октября 2018

Sonarqube работает путем анализа выходных данных Jacoco.Я не вижу никаких конфигов для jacoco в твоем поме.https://www.petrikainulainen.net/programming/maven/creating-code-coverage-reports-for-unit-and-integration-tests-with-the-jacoco-maven-plugin/ - хорошее руководство по настройке.

Вы также должны сообщить sonarqube, где находится ваш файл jacoco.exec.https://docs.sonarqube.org/display/PLUG/Code+Coverage+by+Unit+Tests+for+Java+Project

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...