Сообщение об ошибке аутентификации SonarQube во время анализа
У меня есть проект Java 7/Maven 3, с которым я хочу использовать SonarQube. Из-за Java 7 я должен использовать sonar-maven-plugin 3.0.2. Я получаю ошибку 401 при попытке подключения:
[ОШИБКА] Не удалось выполнить цель org.sonarsource.scanner.maven:sonar-maven-plugin: 3.0.2:sonar (default-cli) в проекте XXX: невозможно выполнить SonarQube: не удалось загрузить библиотеки с сервера: состояние, возвращаемое URL [YYY/sonarqube/batch_bootstrap/index] недействителен: [401] -> [Помощь 1]
Версия плагина maven исправлена в pom.xml следующим образом
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>sonar-maven-plugin</artifactId>
<version>3.0.2</version>
</plugin>
И я поместил настройки в settings.xml, как в примере с SonarQube:
<pluginGroups>
<pluginGroup>org.sonarsource.scanner.maven</pluginGroup>
</pluginGroups>
<profiles>
<profile>
<id>sonar</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<sonar.host.url>YYY</sonar.host.url>
<sonar.login>MYUSER</sonar.login>
<sonar.password>MYPASSWORD</sonar.password>
</properties>
</profile>
</profiles>
Я пытаюсь использовать версию SonarQube 5.6. Что мне не хватает? Почему я продолжаю получать эту ошибку? Я попробовал старую версию (4.5.6) SonarQube, которая была установлена локально на моей машине, и это сработало. Введенные мной учетные данные определенно работают для веб-панели, и система настроена на прием тестов даже от анонимных пользователей, хотя пользователь, которого я сейчас пытаюсь, является администратором. Это действительно ошибка аутентификации (скажем, из-за неправильной конфигурации), или sonar-maven-plugin 3.0.2 не может связаться с SonarQube 5.6?
1 ответ
Здесь происходит две вещи:
- Во-первых, sonar-maven-plugin 3.0.2 нельзя использовать с SonarQube 5.6.
- Во-вторых, SonarQube 5.6+ требует Java 8.
Так что скомпилируйте ваш проект, как вам угодно, но открепите версию плагина и запустите анализ с Java 8.