Расширение Visual Studio SonarLint, подключенное к SonarQube, генерирует предупреждения CA0507 и CA0064 и никаких предупреждений сонара Sxxx - PullRequest
0 голосов
/ 24 января 2020

Я установил расширение SonarLint для Visual Studio, успешно подключился к нашему серверу SonarQube и успешно запустил анализ кода для отображения проблем сонара в VS. Таким образом, это работало хорошо, но по какой-то причине я больше не получаю никаких предупреждений сонара Sxxx и вместо этого теперь вижу следующие 2 предупреждения:

> Warning CA0507 Post-build Code Analysis (FxCopCmd.exe) has been
> deprecated in favor of FxCop analyzers, which run during build. Refer
> to https://aka.ms/fxcopanalyzers to migrate to FxCop analyzers.
> 
> Warning CA0064 : No analysis was performed because the
> specified rule set could not be loaded or did not contain any managed
> code analysis rules.

Но я не использую FxCop, и я не знаю о наличии сделал все, чтобы включить его.

Если я проверю одно правило внутри «Управляемого двоичного анализа», предупреждение CA0064 исчезнет go, но CA0507 останется и все еще не будет предупреждений сонара Sxxx.

1 Ответ

0 голосов
/ 27 января 2020

Пункты меню «Выполнить анализ кода» применяются только к устаревшим правилам FxCop. Вам не нужно использовать эти пункты меню для анализаторов на основе Roslyn (например, правила C# и VB. NET в SonarLint) - Visual Studio автоматически запускает анализ в фоновом режиме. См. Microsoft документы для получения дополнительной информации.

Если вы не видите сообщений о проблемах Sxxx, есть несколько вещей, на которые стоит обратить внимание:

  • Проверьте, у вас установлена ​​опция Включить полный анализ решения . В противном случае VS сообщит о проблемах только в открытых файлах.
  • Вы подключили решение к своему серверу SonarQube, чтобы SonarLint сгенерировал набор правил на основе профиля качества. Набор правил будет находиться в папке уровня решения .sonarlint. Проверьте, включены ли правила, о которых вы ожидаете сообщить о проблемах, в файл набора правил. Если нет, обновите профиль качества на сервере, затем закройте и снова откройте решение. SonarLint обнаружит, что профиль качества изменился, и предложит обновить его.
...