From f6e05d194180659fe0522455258ca260eda3cc6f Mon Sep 17 00:00:00 2001 From: jlerbsc Date: Thu, 18 Aug 2022 14:04:04 +0200 Subject: [PATCH] Fix issue #3614 UnsolvedSymbolException when package declaration contains comment --- .../javaparsermodel/contexts/CompilationUnitContext.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/javaparser-symbol-solver-core/src/main/java/com/github/javaparser/symbolsolver/javaparsermodel/contexts/CompilationUnitContext.java b/javaparser-symbol-solver-core/src/main/java/com/github/javaparser/symbolsolver/javaparsermodel/contexts/CompilationUnitContext.java index 3107cd0240..87b04ae1d1 100644 --- a/javaparser-symbol-solver-core/src/main/java/com/github/javaparser/symbolsolver/javaparsermodel/contexts/CompilationUnitContext.java +++ b/javaparser-symbol-solver-core/src/main/java/com/github/javaparser/symbolsolver/javaparsermodel/contexts/CompilationUnitContext.java @@ -23,8 +23,6 @@ -import static com.github.javaparser.symbolsolver.javaparsermodel.contexts.AbstractJavaParserContext.isQualifiedName; - import java.util.LinkedList; import java.util.List; import java.util.Optional; @@ -60,6 +58,8 @@ * @author Federico Tomassetti */ public class CompilationUnitContext extends AbstractJavaParserContext { + + private static final String DEFAULT_PACKAGE = "java.lang"; /// /// Static methods @@ -199,7 +199,7 @@ public SymbolReference solveType(String name) { // Look in current package if (this.wrappedNode.getPackageDeclaration().isPresent()) { - String qName = this.wrappedNode.getPackageDeclaration().get().getName().toString() + "." + name; + String qName = this.wrappedNode.getPackageDeclaration().get().getNameAsString() + "." + name; SymbolReference ref = typeSolver.tryToSolveType(qName); if (ref != null && ref.isSolved()) { return SymbolReference.adapt(ref, ResolvedTypeDeclaration.class); @@ -225,7 +225,7 @@ public SymbolReference solveType(String name) { } // Look in the java.lang package - SymbolReference ref = typeSolver.tryToSolveType("java.lang." + name); + SymbolReference ref = typeSolver.tryToSolveType(DEFAULT_PACKAGE+ "." + name); if (ref != null && ref.isSolved()) { return SymbolReference.adapt(ref, ResolvedTypeDeclaration.class); }