Sonarqube: Как получить строку выражения при написании пользовательских правил Java? - PullRequest
0 голосов
/ 06 декабря 2018

Целевой класс:

class Example{

  public void m(){

    System.out.println("Hello" + 1);

  }

}

Я хочу получить полную строку MethodInvocation "System.out.println (" Hello "+ 1)" для некоторой проверки регулярных выражений.Как написать?

public class Rule extends BaseTreeVisitor implements JavaFileScanner {

    @Override
    public void visitMethodInvocation(MethodInvocationTree tree) {

        //get the string of MethodInvocation
        //some regex check
        super.visitMethodInvocation(tree);

    }
}

Я написал несколько правил проверки кода, используя eclipse jdt и idea psi, у которых узел дерева выражений имеет эти атрибуты.Интересно, почему у сонара только первый и последний токен?

Спасибо!

...