Исключение в потоке "main" java.lang.IllegalStateException: данные этого типа не найдены. Использовать containsData, чтобы проверить это первым - PullRequest
1 голос
/ 29 апреля 2019

я пытался получить унаследованные методы и поля из исходного кода Java но у меня есть эта проблема:

Я пытался найти унаследованные методы и поля от каждого класса в моем файле, который содержал исходный код Java, синтаксис правильный, но у меня есть некоторые ошибки при выполнении программы

cu.accept(new VoidVisitorAdapter<Void>() {

        public void visit(ClassOrInterfaceDeclaration cid, Void arg) {
            super.visit(cid, arg);

            cid.resolve().getAllFields().stream().forEach(af -> {
                nmbre_attribus++;
            });

            cid.resolve().getDeclaredFields().stream().forEach(df -> {
                Nmbre_attributs_déclarées++;
            });

            cid.resolve().getAllMethods().stream().forEach(am -> {
                nmbre_methds++;
            });

            cid.resolve().getDeclaredMethods().stream().forEach(dm -> {
                Nmbre_methodes_déclarées++;
            });

        }

    }, null);

когда я компилирую весь код, у меня появляются следующие ошибки:

Исключение в потоке "main" java.lang.IllegalStateException: данные этого типа не найдены. Для того, чтобы проверить это, используйте containsData.

at com.github.javaparser.ast.Node.getData(Node.java:453)
at com.github.javaparser.ast.Node.lambda$7(Node.java:703)
at java.util.Optional.map(Unknown Source)
at com.github.javaparser.ast.Node.getSymbolResolver(Node.java:702)
at com.github.javaparser.ast.body.ClassOrInterfaceDeclaration.resolve(ClassOrInterfaceDeclaration.java:276)
at Metriques.Heritage_Attributs$1.visit(Heritage_Attributs.java:66)
at Metriques.Heritage_Attributs$1.visit(Heritage_Attributs.java:1)
at com.github.javaparser.ast.body.ClassOrInterfaceDeclaration.accept(ClassOrInterfaceDeclaration.java:103)
at com.github.javaparser.ast.visitor.VoidVisitorAdapter.lambda$31(VoidVisitorAdapter.java:154)
at java.util.ArrayList.forEach(Unknown Source)
at com.github.javaparser.ast.NodeList.forEach(NodeList.java:268)
at com.github.javaparser.ast.visitor.VoidVisitorAdapter.visit(VoidVisitorAdapter.java:154)
at Metriques.Heritage_Attributs$1.visit(Heritage_Attributs.java:64)
at Metriques.Heritage_Attributs$1.visit(Heritage_Attributs.java:1)
at com.github.javaparser.ast.body.ClassOrInterfaceDeclaration.accept(ClassOrInterfaceDeclaration.java:103)
at com.github.javaparser.ast.visitor.VoidVisitorAdapter.lambda$31(VoidVisitorAdapter.java:154)
at java.util.ArrayList.forEach(Unknown Source)
at com.github.javaparser.ast.NodeList.forEach(NodeList.java:268)
at com.github.javaparser.ast.visitor.VoidVisitorAdapter.visit(VoidVisitorAdapter.java:154)
at Metriques.Heritage_Attributs$1.visit(Heritage_Attributs.java:64)
at Metriques.Heritage_Attributs$1.visit(Heritage_Attributs.java:1)
at com.github.javaparser.ast.body.ClassOrInterfaceDeclaration.accept(ClassOrInterfaceDeclaration.java:103)
at com.github.javaparser.ast.visitor.VoidVisitorAdapter.lambda$43(VoidVisitorAdapter.java:175)
at java.util.ArrayList.forEach(Unknown Source)
at com.github.javaparser.ast.NodeList.forEach(NodeList.java:268)
at com.github.javaparser.ast.visitor.VoidVisitorAdapter.visit(VoidVisitorAdapter.java:175)
at com.github.javaparser.ast.CompilationUnit.accept(CompilationUnit.java:130)
at Metriques.Heritage_Attributs.main(Heritage_Attributs.java:61)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...