Skip to content

Commit 15d3464

Browse files
Fix the main class isn't unique issue (#241)
Signed-off-by: Jinbo Wang <jinbwan@microsoft.com>
1 parent 3008e97 commit 15d3464

1 file changed

Lines changed: 7 additions & 4 deletions

File tree

com.microsoft.java.debug.plugin/src/main/java/com/microsoft/java/debug/plugin/internal/ResolveClasspathsHandler.java

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@
2626
import org.eclipse.core.runtime.Status;
2727
import org.eclipse.jdt.core.IJavaElement;
2828
import org.eclipse.jdt.core.IJavaProject;
29+
import org.eclipse.jdt.core.IType;
2930
import org.eclipse.jdt.core.search.IJavaSearchConstants;
3031
import org.eclipse.jdt.core.search.IJavaSearchScope;
3132
import org.eclipse.jdt.core.search.SearchEngine;
@@ -97,7 +98,7 @@ public static List<IJavaProject> getJavaProjectFromType(String fullyQualifiedTyp
9798
fullyQualifiedTypeName = splitItems[1];
9899
}
99100
final String moduleName = splitItems.length == 2 ? splitItems[0] : null;
100-
101+
final String className = fullyQualifiedTypeName;
101102
SearchPattern pattern = SearchPattern.createPattern(
102103
fullyQualifiedTypeName,
103104
IJavaSearchConstants.TYPE,
@@ -109,9 +110,11 @@ public static List<IJavaProject> getJavaProjectFromType(String fullyQualifiedTyp
109110
@Override
110111
public void acceptSearchMatch(SearchMatch match) {
111112
Object element = match.getElement();
112-
if (element instanceof IJavaElement) {
113-
IJavaProject project = ((IJavaElement) element).getJavaProject();
114-
if (moduleName == null || moduleName.equals(JdtUtils.getModuleName(project))) {
113+
if (element instanceof IType) {
114+
IType type = (IType) element;
115+
IJavaProject project = type.getJavaProject();
116+
if (className.equals(type.getFullyQualifiedName())
117+
&& (moduleName == null || moduleName.equals(JdtUtils.getModuleName(project)))) {
115118
projects.add(project);
116119
}
117120
}

0 commit comments

Comments
 (0)