SonarQube.Runner не совместим с плагином C#
Я пытаюсь получить следующий плагин Sonar C#, следуя инструкциям здесь: http://docs.sonarqube.org/display/PLUG/C%23+Plugin
Плагин C#, установленный на сервере, несовместим с MSBuild.SonarQu be.Runner.exe - либо проверьте матрицу совместимости, либо получите последние версии для обоих. Предварительная обработка не удалась. Код выхода: 1"
при выполнении шага 6):
MSBuild.SonarQube.Runner.exe begin /k:"sonarqube_project_key"
/n:"sonarqube_project_name" /v:"sonarqube_project_version"
- Я пробовал SonarQube версии 4.5.4 (LTS) и 5.1.1
- Командная строка разработчика для VS2012
- Я установил Java (оракул): jdk-8u51-windows-x64.exe
- Microsoft (R) Build Engine версия 4.0.30319.34209
- Работает на Windows Server 2012
Любые идеи о том, как это исправить?
Спасибо
От MrFox:
Я добавил вознаграждение к этому вопросу и добавляю свои вопросы по этому вопросу здесь:
- Нужно ли мне создавать проект SonarQube или "SonarQube_project_key" означает ключ проекта визуальной студии, который я хочу сканировать SonarQube.
- Хотя термин "проект" часто используется, я предполагаю, что это относится к определению проекта с открытым исходным кодом. Не визуальное определение студии, которое является частью решения.
- Что именно означает "sonarqube_project_version"? Я пробовал 6.5 (версия SonarQube), 6.4.1 (плагин SonarQubeC#), 1.0.1 (версия MSBuild.SonarQube.Runner.exe)
Я использовал ключ проекта, который приведен в качестве примера на веб-сайте плагина C#:
MSBuild.SonarQube.Runner.exe begin /k:"org.sonarqube:sonarqube-scanner-msbuild "/n:"Kadaster.Agris" /v:"1.0.1 "
Я пробовал несколько перестановок по этим вопросам.
Я хотел бы использовать Analysis Bootstrapper для Visual Studio, но не могу найти загрузку или объяснение того, как это можно сделать.
Редактировать: положить все сообщение об ошибке после запроса. В тексте это также включает команду, которую я использую после ответов, которые были даны до сих пор:
> D:\projects\agris\src>MSBuild.SonarQube.Runner.exe begin
> /k:"org.sonarqube:Kadas ter_Agris" /n:"Kadaster_Agris" /v:"0.1"
> Default properties file was found at
> D:\Software\MSBuild.SonarQube.Runner.1.0.1\ SonarQube.Analysis.xml
> Loading analysis properties from
> D:\Software\MSBuild.SonarQube.Runner.1.0.1\Sona rQube.Analysis.xml
> Pre-processing started. Preparing working directories... Checking for
> updates... The C# plugin installed on the SonarQube server is not
> compatible with the Sonar Qube analysis agent (i.e. the
> MSBuild.SonarQube.Runner.exe, or the build automat ion task). Either
> check the compatibility matrix or get the latest versions for both.
> Pre-processing failed. Exit code: 1
The first step is to do pre-processing:
> D:\projects\agris\src>D:\Software\sonar-scanner-msbuild-3.0.2.656\MSBuild.SonarQ
> ube.Runner.exe begin /k:"myCompanyHostedSonarQube:GMA_Kadaster_Agris"
> /n:"Kadas ter_Agris" /v:"0.1" SonarQube Scanner for MSBuild 3.0.2
> Default properties file was found at
> D:\Software\sonar-scanner-msbuild-3.0.2.656 \SonarQube.Analysis.xml
> Loading analysis properties from
> D:\Software\sonar-scanner-msbuild-3.0.2.656\Son arQube.Analysis.xml
> Pre-processing started. Preparing working directories... 09:08:16.861
> Updating build integration targets... 09:08:16.879 Fetching analysis
> configuration settings... 09:08:17.971 Generating rulesets...
> 09:08:17.993 Provisioning analyzer assemblies for cs... 09:08:17.994
> Installing required Roslyn analyzers... 09:08:18.507 Pre-processing
> succeeded.
Затем проект должен быть перестроен.
Затем скажите SonarQube завершить работу и отправить все на сервер, этот последний шаг завершается неудачно:
> Done Building Project "D:\projects\agris\src\Kadaster.Agris.sln"
> (Rebuild targe t(s)).
>
>
> Build succeeded.
>
> "D:\projects\agris\src\Kadaster.Agris.sln" (Rebuild target) (1) ->
> "D:\projects\agris\src\Kadaster.Agris.Web\Kadaster.Agris.Web.csproj.metaproj"
> ( Rebuild target) (13) ->
> "D:\projects\agris\src\Kadaster.Agris.Web\Kadaster.Agris.Web.csproj"
> (Rebuild t arget) (14) -> (CoreCompile target) ->
> Controllers\OutputController.cs(48,30): warning CS0168: The variable
> 'ex' is declared but never used
> [D:\projects\agris\src\Kadaster.Agris.Web\Kadaster.Agri s.Web.csproj]
> Controllers\OutputController.cs(80,30): warning CS0168: The variable
> 'ex' is declared but never used
> [D:\projects\agris\src\Kadaster.Agris.Web\Kadaster.Agri s.Web.csproj]
> Controllers\OutputController.cs(166,30): warning CS0168: The variable
> 'ex' is declared but never used
> [D:\projects\agris\src\Kadaster.Agris.Web\Kadaster.Agr is.Web.csproj]
>
> 3 Warning(s)
> 0 Error(s)
>
> Time Elapsed 00:00:08.91
>
> D:\projects\agris\src>D:\Software\sonar-scanner-msbuild-3.0.2.656\MSBuild.SonarQ
> ube.Runner.exe end SonarQube Scanner for MSBuild 3.0.2 Default
> properties file was found at
> D:\Software\sonar-scanner-msbuild-3.0.2.656 \SonarQube.Analysis.xml
> Loading analysis properties from
> D:\Software\sonar-scanner-msbuild-3.0.2.656\Son arQube.Analysis.xml
> Post-processing started. The SonarQube MSBuild integration failed:
> SonarQube was unable to collect the re quired information about your
> projects. Possible causes:
> 1. The project has not been built - the project must be built in between the b egin and end steps
> 2. An unsupported version of MSBuild has been used to build the project. Curre ntly MSBuild 14.0 upwards are supported
> 3. The begin, build or end steps have not all been launched from the same fold er Generation of the sonar-properties file failed. Unable to
> complete SonarQube ana lysis. 14:38:26.197 Creating a summary
> markdown file... 14:38:26.2 Post-processing failed. Exit code: 1
Три предупреждения касаются неиспользуемых переменных исключения.
1 ответ
Нужно ли мне создавать проект SonarQube или "SonarQube_project_key" означает ключ проекта визуальной студии, который я хочу сканировать SonarQube.
Ключ указан /k:
будет использоваться в качестве уникального ключа для идентификации вашего проекта на сервере SonarQube. Это может быть что угодно, и это действительно зависит от вас. Например, общий выбор - это название решения в Visual Studio.
/n:
Параметр определяет отображаемое имя для использования в SonarQube.
/v:
Параметр определяет версию вашего проекта, которую представляет ваш анализ. Одна из основных целей SonarQube - отслеживать изменения качества кода в так называемом периоде утечки, который является временем с момента последнего выпуска. Метрики периода утечки сбрасываются при изменении версии. SonarQube не предполагает версию вашего проекта, вы сами говорите это явно.
Хотя термин "проект" часто используется, я предполагаю, что это относится к определению проекта с открытым исходным кодом. Не визуальное определение студии, которое является частью решения.
Термин "проект" в документации SonarQube относится к представлению в SonarQube. В терминах Visual Studio это соответствует "решению". Обычно вы создаете один проект SonarQube для решения Visual Studio. Это вопрос того, как вы хотите посмотреть на свои показатели качества. Обычно имеет смысл объединять метрики всех проектов Visual Studio в одну панель мониторинга в SonarQube.
Я хотел бы использовать Analysis Bootstrapper для Visual Studio, но не могу найти загрузку или объяснение того, как это можно сделать.
Это устарело. Вам не нужно больше это во время написания этой статьи.
Похоже, вы используете очень старую версию Scanner для MSBuild. Вы можете скачать последнюю версию здесь, попробуйте с этим:
https://docs.sonarqube.org/display/SCAN/Analyzing+with+SonarQube+Scanner+for+MSBuild
Однако обратите внимание, что текущие версии Scanner для MSBuild требуют MSBuild версии 14 или выше. Это означает, что ваш проект должен быть построен с Visual Studio 2015 или выше. Если ваш проект использует более старую версию, вам придется ее перенести.