You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
package com.examples.input;
public class Test1 {
void test() {
try{
throw new CustomException("This is a custom Exception");
} catch (CustomException e) {
System.out.println(e.getMessage());
}
}
}
In ModifierVisitor, when trying to resolve the Parameter in method
@Override
public Visitable visit(Parameter n, Void arg) {
n.resolve(); // ---> exception thrown here
return super.visit(n, arg);
}
an exception is thrown. Stack trace:
Exception in thread "main" java.lang.UnsupportedOperationException: Unable to find the declaration of type ResolvedParameterDeclaration from Parameter
at com.github.javaparser.symbolsolver.JavaSymbolSolver.resolveDeclaration(JavaSymbolSolver.java:279)
at com.github.javaparser.ast.body.Parameter.resolve(Parameter.java:322)
at com.examples.input.ExceptionVisitor.visit(ExceptionVisitor.java:10)
at com.examples.input.ExceptionVisitor.visit(ExceptionVisitor.java:7)
at com.github.javaparser.ast.body.Parameter.accept(Parameter.java:114)
at com.github.javaparser.ast.visitor.ModifierVisitor.visit(ModifierVisitor.java:210)
at com.github.javaparser.ast.visitor.ModifierVisitor.visit(ModifierVisitor.java:53)
at com.github.javaparser.ast.stmt.CatchClause.accept(CatchClause.java:78)
at com.github.javaparser.ast.visitor.ModifierVisitor.visit(ModifierVisitor.java:1133)
at com.github.javaparser.ast.visitor.ModifierVisitor.visit(ModifierVisitor.java:53)
at com.github.javaparser.ast.NodeList.accept(NodeList.java:275)
at com.github.javaparser.ast.visitor.ModifierVisitor.modifyList(ModifierVisitor.java:1172)
at com.github.javaparser.ast.visitor.ModifierVisitor.visit(ModifierVisitor.java:951)
at com.github.javaparser.ast.visitor.ModifierVisitor.visit(ModifierVisitor.java:53)
at com.github.javaparser.ast.stmt.TryStmt.accept(TryStmt.java:137)
at com.github.javaparser.ast.visitor.ModifierVisitor.visit(ModifierVisitor.java:1133)
at com.github.javaparser.ast.visitor.ModifierVisitor.visit(ModifierVisitor.java:53)
at com.github.javaparser.ast.NodeList.accept(NodeList.java:275)
at com.github.javaparser.ast.visitor.ModifierVisitor.modifyList(ModifierVisitor.java:1172)
at com.github.javaparser.ast.visitor.ModifierVisitor.visit(ModifierVisitor.java:171)
at com.github.javaparser.ast.visitor.ModifierVisitor.visit(ModifierVisitor.java:53)
at com.github.javaparser.ast.stmt.BlockStmt.accept(BlockStmt.java:72)
at com.github.javaparser.ast.visitor.ModifierVisitor.lambda$visit$60(ModifierVisitor.java:674)
at java.base/java.util.Optional.map(Optional.java:260)
at com.github.javaparser.ast.visitor.ModifierVisitor.visit(ModifierVisitor.java:674)
at com.github.javaparser.ast.visitor.ModifierVisitor.visit(ModifierVisitor.java:53)
at com.github.javaparser.ast.body.MethodDeclaration.accept(MethodDeclaration.java:100)
at com.github.javaparser.ast.visitor.ModifierVisitor.visit(ModifierVisitor.java:1133)
at com.github.javaparser.ast.visitor.ModifierVisitor.visit(ModifierVisitor.java:53)
at com.github.javaparser.ast.NodeList.accept(NodeList.java:275)
at com.github.javaparser.ast.visitor.ModifierVisitor.modifyList(ModifierVisitor.java:1172)
at com.github.javaparser.ast.visitor.ModifierVisitor.visit(ModifierVisitor.java:246)
at com.github.javaparser.ast.visitor.ModifierVisitor.visit(ModifierVisitor.java:53)
at com.github.javaparser.ast.body.ClassOrInterfaceDeclaration.accept(ClassOrInterfaceDeclaration.java:97)
at com.github.javaparser.ast.visitor.ModifierVisitor.visit(ModifierVisitor.java:1133)
at com.github.javaparser.ast.visitor.ModifierVisitor.visit(ModifierVisitor.java:53)
at com.github.javaparser.ast.NodeList.accept(NodeList.java:275)
at com.github.javaparser.ast.visitor.ModifierVisitor.modifyList(ModifierVisitor.java:1172)
at com.github.javaparser.ast.visitor.ModifierVisitor.visit(ModifierVisitor.java:310)
at com.examples.input.TestExecutorClass.main(TestExecutorClass.java:31)
Since the CustomException class is a part of the source code, I believe that should be resolved successfully. Here is the reproducible sample repository
Interestingly, if I change the java file like below
package com.examples.input;
public class Test1 {
void test(CustomException arg) {
}
}
The CustomException arg is successfully resolved in the public Visitable visit(Parameter n, Void arg) method. This give me a sense that problem might be associated with the catch block parameter.
Please let me know I am doing it incorrectly. Any suggestions is appreciated.
The text was updated successfully, but these errors were encountered:
The parsed java file is as below:
In ModifierVisitor, when trying to resolve the Parameter in method
an exception is thrown. Stack trace:
Since the
CustomException
class is a part of the source code, I believe that should be resolved successfully. Here is the reproducible sample repositoryThe resolve method here is causing the exception.
Interestingly, if I change the java file like below
The CustomException arg is successfully resolved in the
public Visitable visit(Parameter n, Void arg)
method. This give me a sense that problem might be associated with the catch block parameter.Please let me know I am doing it incorrectly. Any suggestions is appreciated.
The text was updated successfully, but these errors were encountered: