Анализатор SonarQube FindBugs (с SpotBugs 3.1.0-RC6) не поддерживает JDK 11 - PullRequest
3 голосов
/ 01 апреля 2020

Я перенес свое приложение в OpenJDK11, и сборка Jenkins завершается сбоем, поскольку Findbug больше не поддерживается. Плагин:

  • sonar-maven-plugin - Внутренне вызывает Findbug в java 11 env и ломает сборку Jenkins

Как мне перенести этот плагин, чтобы использовать последнюю зависимость от Spotbug, я все еще хочу сохранить плагин sonar-maven-plugin, чтобы получить отчет для сонара.

Текущая пом. xml соответствующая часть:

<build>
    <pluginManagement>
        <plugins>

            <plugin>
                <groupId>org.sonarsource.scanner.maven</groupId>
                <artifactId>sonar-maven-plugin</artifactId>
                <version>3.7.0.1746</version>
            </plugin>
        </plugins>
    </pluginManagement>
</build>

Уже прошел много документов. Не удалось найти решение.

Версия SonarQube: Версия 6.7 (сборка 33306)

Установленные плагины (соответствующие):

  • FindbugsExternal Analyzers Анализ Java кода с помощью SpotBugs 3.1.0-RC6. 3.6.0
  • Анализатор кода SonarJavaLanguages ​​ для Java 5.13.1 (сборка 18282)
  • Сонар XML Анализатор кода для XML 2.0.1 (сборка 2020)
  • CheckstyleExternal Analyzers Анализ Java кода с Checkstyle 4.23

Ответы [ 2 ]

2 голосов
/ 13 апреля 2020

FindbugsExternal Analyzers Анализируйте Java код с помощью SpotBugs 3.1.0-RC6. 3.6.0

Я не могу найти версию плагина SonarQube Findbugs , который предоставляет SpotBugs 3.1.0-RC6. Оно должно быть между:

  • 3.7.0 (выпущено: 15 марта 2018 г.) предоставляет SpotBugs 3.1.2 (см. код )
  • 3.6.0 (выпущено: 21 сентября 2017 г.) предоставляет SpotBugs 3.1.0-RC5 (см. код )

Мне кажется, что вы используете пользовательская версия плагина.

Первая версия плагина Findbugs, которая обещает поддерживать JDK 11: 3.10.0 (зависит от Sonar Java 5.10.1, где JDK 11 поддерживается с Sonar Java 5.8 ( SONAR JAVA -2862 ), см. код ).

Вторая проблема заключается в том, что вы пытаетесь использовать не обслуживаемый ( не поддерживается) версия сервера:

версия SonarQube: версия 6.7 (сборка 33306)

с последней версией SonarScanner:

<artifactId>sonar-maven-plugin</artifactId>
<version>3.7.0.1746</version>

SonarQube 6.7 выпущен 8 ноября 2017 г. (тег создан 7 ноября 2017 г.). Он был выпущен до первого официального релиза JDK 11 LTS (Google показывает сентябрь 2018 г.).

Я думаю, что единственное правильное решение - обновить SonarQube по крайней мере до 7.9 LTS со всеми плагинами.

0 голосов
/ 11 апреля 2020

Попробуйте понизить версию плагина сонара. Эта версия плагина работала для меня.

    <plugins>
        <plugin>
            <groupId>org.sonarsource.scanner.maven</groupId>
            <artifactId>sonar-maven-plugin</artifactId>
            <version>3.6.0.1398</version>
        </plugin>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.8.0</version>
            <configuration>
                <source>11</source>
                <target>11</target>
            </configuration>
        </plugin>
    </plugins>
...