Ошибка сонара в gradle5 с SourceSetOutput.getClassesDir не найден - PullRequest
0 голосов
/ 08 января 2019

Я получаю сообщение об ошибке при запуске sonarqube на Gradle 5, я получаю сообщение об ошибке:

What went wrong:
 org.gradle.api.tasks.SourceSetOutput.getClassesDir()Ljava/io/File;


Try:
Run with --info or --debug option to get more log output. Run with     --scan to get full insights.

Exception is:
java.lang.NoSuchMethodError:        
    org.gradle.api.tasks.SourceSetOutput.getClassesDir()Ljava/io/File;
at    org.sonarqube.gradle.SonarQubePlugin.configureSourceDirsAndJavaClasspath(SonarQubePlugin.java:169)
at    org.sonarqube.gradle.SonarQubePlugin.lambda$configureForJava$1(SonarQubePlugin.java:104)

Я попытался понизить версию Gradle до 4.0 и обнаружил проблему, теперь она показывает

:sonarqube
Gradle now uses separate output directories for each JVM language, but this build assumes a single directory for all classes from a source set. This behaviour has been deprecated and is scheduled to be removed in Gradle 5.0
    at     org.gradle.api.internal.tasks.DefaultSourceSetOutput.getClassesDir(DefaultSourceSetOutput.java:79)
at    org.gradle.api.internal.tasks.DefaultSourceSetOutput_Decorated.getClassesDir(Unknown Source)
at  org.sonarqube.gradle.SonarQubePlugin.configureSourceDirsAndJavaClasspath(SonarQubePlugin.java:169)

Конфигурации Gradle, представленные в моем коде, как показано ниже,

sonarqube {

    properties {
        property "sonar.jacoco.reportPath", "${project.buildDir}/jacoco/test.exec"
        property "sonar.exclusions", "**/generated-*/**/*"
        property "sonar.sources", "src/main/java"
        property "sonar.tests", "src/test/java"
        //property "sonar.java.binaries", "${project.buildDir}/classes/main/"
    }
}

Я полагаю, что проблему можно исправить, добавив ожидаемое свойство в список свойств sonarqube или явно указав исходный каталог. Может кто-нибудь, пожалуйста, совет, как это сделать?

Ответы [ 3 ]

0 голосов
/ 21 марта 2019

Я использовал Gradle 5.3, я получаю ошибки, как в этом вопросе. Затем я понижаю рейтинг до Gradle 4.10.3. Это работало как волшебство.

0 голосов
/ 28 мая 2019

Не полное решение, я перенес свой скрипт сборки в kotlin, и это помогло мне.

0 голосов
/ 18 января 2019

Я использую Gradle 5.1, и я наблюдал то же самое, используя org.sonarqube: 2.5. Тем не менее, это работает для меня, когда я использую org.sonarqube: 2.7.

plugins {
    id "org.sonarqube" version "2.7"
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...