diff --git a/com.microsoft.java.debug.plugin/src/main/java/com/microsoft/java/debug/plugin/internal/ResolveClasspathsHandler.java b/com.microsoft.java.debug.plugin/src/main/java/com/microsoft/java/debug/plugin/internal/ResolveClasspathsHandler.java index 5e7017128..7d54881cd 100644 --- a/com.microsoft.java.debug.plugin/src/main/java/com/microsoft/java/debug/plugin/internal/ResolveClasspathsHandler.java +++ b/com.microsoft.java.debug.plugin/src/main/java/com/microsoft/java/debug/plugin/internal/ResolveClasspathsHandler.java @@ -326,7 +326,12 @@ protected JavaApplicationLaunchConfiguration(IProject project, String mainType, classpathProvider = "org.eclipse.m2e.launchconfig.classpathProvider"; sourcepathProvider = "org.eclipse.m2e.launchconfig.sourcepathProvider"; } else if (ProjectUtils.isGradleProject(project)) { - classpathProvider = "org.eclipse.buildship.core.classpathprovider"; + if (excludeTestCode && mappedResources.isEmpty()) { + // use default StandardClasspathProvider for Gradle 'runtime' classpath. + // see: https://github.com/microsoft/vscode-java-debug/issues/1008 + } else { + classpathProvider = "org.eclipse.buildship.core.classpathprovider"; + } } // Since MavenRuntimeClasspathProvider will only including test entries when: