2017-01-05 4 views
1

Я запускаю C# build внутри teamcity, который включает в себя шаг для анализа моего кода с помощью Sonar.SonarQube MSBuild предупреждение

Однако я всегда получаю предупреждение в журналах сборки гидролокатора.

INFO - SonarAnalyzer.Scanner needs to be executed: true 
     *********************************************************************************** 
WARN - *     Use MSBuild 14 to get the best analysis results     * 
WARN - * The use of MSBuild 12 or the sonar-scanner to analyze C# projects is DEPRECATED * 
WARN - *********************************************************************************** 

Теперь я знаю, что этот проект не использует MSBuild 12, а первая строка в фрагменте кода предполагает, что проблема в том, что sonar-scanner будет использована.

Как избежать использования сканера сонара и использовать MSBuild 14?

Ниже перечислены версии своего программного обеспечения:

Teamcity version 10.0.4 
SonarQube version 6.2 
Sonar C# plugin version 5.5.2.537 
sonar-plugin for teamcity compiled from source as of 4th Jan 2017 

ли плагин TeamCity Sonar использует только эхолот-сканер или что-то еще я могу изменить?

ответ

1

Плагин SonarQube TeamCity - это сообщество, которое, как представляется, использует SonarScanner напрямую. Это не идеально, потому что .NET-проекты могут иметь сложные настройки сборки, и SonarScanner сам по себе не способен обрабатывать различные цели msbuild. Проекты .NET должны анализироваться SonarQube Scanner for MsBuild, который делегирует обработку структуры проекта самому MsBuild.

У нас нет встроенной интеграции с TeamCity, но это не должно мешать вам использовать сканер для MsBuild. Это simple command line application, поэтому вы можете вызвать команды begin и end в шаге построения командной строки TeamCity.

Кстати, вы видите предупреждение msbuild12, потому что SonarScanner запускает файл по анализу файлов вопреки Сканеру для MsBuild, который использует какой-либо msbuild, который вы указываете. В случае MsBuild14 вы получаете выгоду от всех преимуществ Roslyn, а в случае MsBuild12 мы возвращаемся к файлу путем анализа файлов.

+0

Привет, спасибо за предложение, я установил и запустил приложение командной строки, поскольку вы предложили, но я получаю сообщение об ошибке «SonarQube не смог собрать необходимую информацию о ваших проектах», и предлагаемые возможные причины не имеют отношения к делу. Где я могу найти журналы сонара для получения дополнительной информации для отладки? –

+0

Можете ли вы перейти к папке решения перед запуском сканера для MsBuild. Журналы и большинство собранных данных находятся в папке '.sonarqube' рядом с вашим решением. Я подозреваю, что вы запускаете сканер для MsBuild из одной папки, а затем переходите к своему решению и начинаете сборку там. – Tamas

+0

Я вообще не перемещаю папку, когда я смотрю в '.sonarqube', есть папка' out', в которой содержатся только файлы, ProjectInfo.log и summary.md. Ни один из них не используется. –

Смежные вопросы