Подтвердить что ты не робот

Как сделать анализ сонара для работы на C++?

Я пытаюсь использовать сонар для статического анализа кода С++. Я установил сонар и сконфигурировал свой проект (он появляется на странице сонара localhost, но я не вижу нарушения кода для соответствующего кода). У меня установлен плагин сообщества С++.

Мои параметры sonar-project.properties выглядят следующим образом:

# required metadata
sonar.projectKey=DiceInvaders
sonar.projectName=Dice Invaders
sonar.projectVersion=1.0

# optional description
sonar.projectDescription=DiceInvaders by CS

# path to source directories (required)
sonar.sources=D:\\DiceInvaders\\Code

# path to test source directories (optional)
#sonar.tests=D:\\DiceInvaders\\Code

# path to project binaries (optional), for example directory of Java bytecode
#sonar.binaries=binDir

# optional comma-separated list of paths to libraries. Only path to JAR file is supported.
#sonar.libraries=path/to/library/*.jar,path/to/specific/library/myLibrary.jar,parent/*/*.jar

# The value of the property must be the key of the language.
sonar.language=c++
sonar.exclusions=**/*.ipch, **/**/*.rc
sonar.cxx.cppcheck.path = "C:\Program Files (x86)\Cppcheck\cppcheck.exe"
sonar.cxx.cppcheck.reportPath="D:\DiceInvaders\Code\cppcheck-reports\cppcheck.xml". 

# Additional parameters
#sonar.my.property=value

Я не получаю никаких ошибок при запуске sonar-runner из cmd.

Если я запускаю вручную инструмент cppcheck.exe в моем проекте, я могу найти нарушения. Почему нарушители не появляются на странице сонара? Есть ли что-то еще, что я должен настроить, я делаю что-то неправильно?

4b9b3361

Ответ 1

Мне удалось заставить его работать, запустив инструмент cppcheck независимо от sonnar-runner и разместив сгенерированный отчет xml в папке bin sonnar-runner.

В файле sonar-project.properties я прямо указал xml: sonar.cxx.cppcheck.reportPath = cppcheck-result-1.xml

Ответ 2

У меня была аналогичная проблема, которая была вызвана пробелом после "sonar.language = cs". Убедитесь, что после "cxx" произошла строка. Надеюсь, что это сработает.