利用Sonar定製自定義掃描規則

YatHo發表於2017-10-17

上有3種方法可以自定義soanr的程式碼校驗規則:

  • 直接在sonar的web介面中增加XPath規則;
  • 通過外掛的功能來增加自定義規則,比如checkstyle,pmd等外掛是允許自定義規則的;
  • 通過新增一個程式碼分析器來實現自定義規則;

sonar官方推薦的方式是使用最簡單的XPath方式來增加自定義規則,如果語言太複雜或者XPath無法查詢其結構的,再使用自定義外掛的方式。

 

sonar為大部分流行的語言(C, C#, C++, Cobol, Flex, JavaScript, PL/I, PL/SQL, Python and VB.NET)提供了一個簡潔的方式來增加程式碼規則。這些新增規則必須使用XPath來實現,這樣的話語言的每一部分都可以對映到Abstract Syntax Tree(AST)。對於每一種語言,SSLR Toolkit 工具提供了程式碼轉AST的功能。

相關文章