У меня есть следующие настройки …
У нас есть ряд решений / проектов Visual Studio C ++. Все они успешно обрабатываются с помощью TeamCity — Compile, Unit Test, Nuget Package и т. Д. Сейчас я пытаюсь добавить анализ Sonar этого проекта с помощью плагина C ++ Community.
Теперь я понимаю, что сам плагин не выполняет никакого анализа, который должен выполняться отдельно, а плагин только импортирует результаты. Плагин успешно может идентифицировать и импортировать все исходные файлы, я могу показать, что они перечислены в панели мониторинга SonarQube.
Фактическая сборка и анализ выполняются с помощью компилятора Visual Studio / Visual C ++ с использованием MSBuild. Я включил анализ кода через MSBuild и вижу, что он генерирует список проблем. Однако я не могу заставить SonarQube импортировать этот список проблем.
Для команды MSBuild я использую следующие параметры …
/t:Build
/p:Configuration=Debug
/p:RunCodeAnalysis=True;CodeAnalysisRuleSet=AllRules.ruleset;verbosity=normal
/filelogger
/flp:verbosity=diagnostic
Я подтвердил, что файл MSBuild.log создается и обнаруживает проблемы.
Шаги Sonar-Runner имеют следующие параметры …
-Dsonar.language=c++
-Dsonar.projectKey=MYProject
-Dsonar.projectName=MYProject
-Dsonar.projectVersion=0.0.1
-Dsonar.sources=Src
-Dsonar.cxx.compiler.reportPath=*.log
-Dsonar.cxx.compiler.charset=UTF-8
-Dsonar.exclusions=**/packages/**/*
-Dsonar.cxx.includeDirectories=Src/Packages "-Dsonar.cxx.compiler.parser='Visual C++'"
Я также пытался использовать -Dsonar.cxx.compiler.reportPath=MSbuild.log
Сонар, кажется, работает нормально, но просто не поднимает проблемы анализа кода.
Может ли кто-нибудь подсказать, что я могу делать не так, или что еще можно попробовать.
Любая помощь будет принята с благодарностью.
Спасибо & С Уважением,
RG
попробуйте последнюю версию плагин и убедитесь, что все связанные с компилятором правила включены в вашем профиле. И проверьте журнал компиляции, если пути там относительные, вам нужно передать флаг / FC в сборник