Файл свойств сканера sonarqube для проекта C - PullRequest
0 голосов
/ 23 мая 2018

Я использую Sonar Qube для анализа C-файлов.Я не могу видеть полный запахи, перечисленные для C / C ++ после анализа.Например, ошибка «Разделить по нулю» не указана в запахе кода.

Настройки моего сонарного сканера перенастроены для языка C с использованием параметра sonar.language=c и используются специальные теги языка C, например, sonar.c.include directories.Я получаю ошибки Lexer для файлов C.

Может кто-нибудь помочь мне решить эту проблему.

Ответы [ 2 ]

0 голосов
/ 22 января 2019

Вы можете сделать анализ бесплатно с SonarOpenCommunity / sonar-cxx .Однако вам нужен внешний инструмент, такой как cppcheck, на вашем компьютере разработчика для получения результатов в формате XML в файле.

Вот как я смог это сделать:

  1. Установите sonar-c-plugin.Для моей версии sonarqube 5.6.1 я получил это от https://github.com/SonarOpenCommunity/sonar-cxx/releases/download/cxx-0.9.8/sonar-c-plugin-0.9.8.jar
  2. Настройте свойство sonar.c.cppcheck.reportPath на сервере sonarqube в разделе Администрирование / Общие параметры / C (Сообщество) / Cppcheck.,Я установил build/cppcheck.xml
  3. Установить cppcheck на компьютере разработчика
  4. Запустить cppcheck для вашего проекта и сохранить результаты в build / cppcheck.xml
  5. Создайте файл sonar-project.properties в корневом каталоге вашего проекта, см. Ниже мой образец
  6. Установите и запустите sonar-scanner

Вот мой сонар-Файл project.properties:

sonar.host.url=http://mycompany.com:9000

sonar.projectKey=myprojectShortName
sonar.projectName=myprojectLongname
sonar.projectVersion=0.1

# Your relative path to source folder may be different 
sonar.sources=src/main/c

sonar.language=c

# The build-wrapper output dir
sonar.cfamily.build-wrapper-output=bw-outputs

# Encoding of the source files
sonar.sourceEncoding=UTF-8
0 голосов
/ 26 июля 2018

C и C ++ поддерживаются в SonarQube только с платным Developer Edition или более дорогими выпусками от SonarSource.Если вы используете SonarQube Community Edition, возможно, именно по этой причине вы получаете эти ошибки лексера или иным образом не можете сканировать файлы C.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...