Я хочу написать свои собственные правила сонара в Java. У нас есть требование добавить несколько правил безопасности в SonarQube. Прежде чем попробовать это, я должен сначала попробовать базовое правило кодирования. Для этого я следую приведенной ниже ссылке: https://github.com/SonarSource/sonar-java/tree/master/java-checks/srcПравила кодирования сонара в Java
Я попытался добавить образцы правил, упомянутых в примерах сонара, которые отлично работали для меня.
Теперь я попытался добавить уже существующее правило в github , создав новый java-файл в той же папке.
Здесь я добавил, https://github.com/SonarSource/sonar-java/blob/master/java-checks/src/main/java/org/sonar/java/checks/DuplicateConditionIfElseIfCheck.java код в моей основной папке. Я также добавил соответствующие java-файлы в тестовую папку.
Но я получаю следующее сообщение об ошибке, когда я компилирую с помощью -> МВН компилировать
C:\Sonar\sonar-examples-master\plugins\java-custom-rules>mvn compile
[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building Java Custom Rules 1.0-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- sonar-packaging-maven-plugin:1.12.1:check-dependencies (default-check
-dependencies) @ java-custom-rules ---
[INFO]
[INFO] --- maven-resources-plugin:2.7:resources (default-resources) @ java-custo
m-rules ---
[WARNING] Using platform encoding (Cp1252 actually) to copy filtered resources,
i.e. build is platform dependent!
[INFO] skip non existing resourceDirectory C:\Sonar\sonar-examples-master\plugin
s\java-custom-rules\src\main\resources
[INFO]
[INFO] --- maven-compiler-plugin:3.1:compile (default-compile) @ java-custom-rul
es ---
[INFO] Changes detected - recompiling the module!
[WARNING] File encoding has not been set, using platform encoding Cp1252, i.e. b
uild is platform dependent!
[INFO] Compiling 9 source files to C:\Sonar\sonar-examples-master\plugins\java-c
ustom-rules\target\classes
[INFO] -------------------------------------------------------------
[WARNING] COMPILATION WARNING :
[INFO] -------------------------------------------------------------
[WARNING] /C:/Sonar/sonar-examples-master/plugins/java-custom-rules/src/main/jav
a/org/sonar/samples/java/MyJavaFileCheckRegistrar.java: C:\Sonar\sonar-examples-
master\plugins\java-custom-rules\src\main\java\org\sonar\samples\java\MyJavaFile
CheckRegistrar.java uses unchecked or unsafe operations.
[WARNING] /C:/Sonar/sonar-examples-master/plugins/java-custom-rules/src/main/jav
a/org/sonar/samples/java/MyJavaFileCheckRegistrar.java: Recompile with -Xlint:un
checked for details.
[INFO] 2 warnings
[INFO] -------------------------------------------------------------
[INFO] -------------------------------------------------------------
[ERROR] COMPILATION ERROR :
[INFO] -------------------------------------------------------------
[ERROR] /C:/Sonar/sonar-examples-master/plugins/java-custom-rules/src/main/java/
org/sonar/samples/java/DuplicateConditionIfElseIfCheck.java:[50,54] cannot find
symbol
symbol: class Location
location: interface org.sonar.plugins.java.api.JavaFileScannerContext
[INFO] 1 error
[INFO] -------------------------------------------------------------
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 13.667 s
[INFO] Finished at: 2015-10-06T09:55:20+03:00
[INFO] Final Memory: 15M/37M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.
1:compile (default-compile) on project java-custom-rules: Compilation failure
[ERROR] /C:/Sonar/sonar-examples-master/plugins/java-custom-rules/src/main/java/
org/sonar/samples/java/DuplicateConditionIfElseIfCheck.java:[50,54] cannot find
symbol
[ERROR] symbol: class Location
[ERROR] location: interface org.sonar.plugins.java.api.JavaFileScannerContext
Мне нужно добавить любые другие файлы фляги ли? Пожалуйста, помогите мне.
Спасибо заранее, Shruthi
Пожалуйста следуйте примеру плагина пользовательских правил: https://github.com/SonarSource/sonar-examples/tree/master/plugins/java-custom-rules – benzonico
У меня уже есть эти примеры, и это сработало для меня. Теперь я пытаюсь добавить любое из правил, представленных в https://github.com/SonarSource/sonar-java/tree/master/java-checks/src/main/java/org/sonar/java –
Если я попытался добавить тот же код, я получаю вышеуказанную ошибку –