Как получить полностью определенное имя для определенного пользователем типа данных в правиле пользовательского сонара Java - PullRequest
0 голосов
/ 30 января 2019

Ниже приведен фрагмент кода.

    Public class UserDefinedDTO {

    // userDefined variable is refers to UserDefined class
    private UserDefined userDefined;

    private String name;

    }

@Rule(key = "UserDefinedChecks", name = "Java Doc check", description = "", priority = Priority.BLOCKER, tags = {
        "bug" })
public class UserDefinedChecks extends IssuableSubscriptionVisitor{

    @Override
    public List<Kind> nodesToVisit() {
        return ImmutableList.of(Kind.VARIABLE);
    }

    @Override
    public void visitNode(Tree tree) {
        VariableTree variable = (VariableTree) tree;
        String name = variable.type().symbolType().fullyQualifiedName();
        System.out.println(name);
     }
}

Вывод:

java.lang.String
!unknownSymbol!

при извлечении полностью определенного имени для определенного пользователем типа данных, которое он дает! UnknownSymbol!вместо точного уточненного имени, но если я использовал String вместо пользовательского типа данных, он дает java.lang.String

Пожалуйста, дайте мне знать, как получить полностью определенное имя для пользовательского типа данных.Благодарим Вас за помощь.

1 Ответ

0 голосов
/ 30 июля 2019

Это означает, что вы неправильно импортировали класс UserDefined.Добавить импорт

...