2014-09-22 73 views
1

最近,我在sonarqube 4.4上編寫了一些XPath Query。他們中的一些人在聲納4.4上工作,其中一些則不是。例如,當我定義XPath查詢如下:SonarQube 4.4中的一些XPath規則工作4.4

  1. //IfStatement/statement[not(block)]
  2. //WhileStatement/statement[not(block)]
  3. //variableDeclarator[not(block)]

聲納4.4檢測的問題和當我定義XPath查詢如下:

  1. //qualifiedIdentifier/IDENTIFIER[@tokenValue= "println"]

聲納不檢測問題。爲什麼這個原因?

正如Fabrice在here中解釋的那樣,這是sonarqube 4.4中的一個已知錯誤,但爲什麼一些XPath查詢(例如If/Statement)在聲納4.4和另一個不適用?

+0

通過下載[SSLR Java工具包](http://repository.codehaus.org/org/codehaus/sonar-plugins/java/sslr-java-toolkit/2.4/sslr-java-toolkit-2.4.jar) ,你將能夠獲得任何java源文件的AST結構,甚至可以測試你的Xpath表達式。 – 2014-09-22 19:46:50

+0

是的。我下載了SSLR java工具包和XPath查詢工作在SSLR Java工具包上,但在聲納中它不保存並且未檢測到問題。 – 2014-09-23 06:53:08

回答