Недавно я написал несколько запросов XPath на sonarqube 4.4. Некоторые из них работают на гидролокаторе 4.4, а некоторые - нет. Например, когда я определил запросы XPath следующим образом:Некоторые правила работы XPath в SonarQube 4.4
//IfStatement/statement[not(block)]
//WhileStatement/statement[not(block)]
//variableDeclarator[not(block)]
сонара 4.4 обнаружения проблем и, когда я определил запросы XPath следующим образом:
//qualifiedIdentifier/IDENTIFIER[@tokenValue= "println"]
Гидролокатор не обнаруживает проблем. Почему причина этого?
Как объясняет Фабрицио в here, это известная ошибка в sonarqube 4.4, но почему некоторые запросы XPath (например, If/Statement) работают на гидролокаторе 4.4, а другой нет?
Загрузите инструментарий [SSLR Java toolkit] (http://repository.codehaus.org/org/codehaus/sonar-plugins/java/sslr-java-toolkit/2.4/sslr-java-toolkit-2.4.jar) , вы сможете получить структуру AST для любого исходного файла java и даже протестировать ваше выражение Xpath. –
Да. Я загрузил инструмент SSLR java toolkit, и запрос XPath работает с инструментарием SSLR java, но в сонаре он не сохраняет и не обнаруживает проблем. –