Bringing PR-3050 into vsnetbeans_preview_1243 branch
diff --git a/extide/gradle/src/org/netbeans/modules/gradle/actions/ActionToTaskUtils.java b/extide/gradle/src/org/netbeans/modules/gradle/actions/ActionToTaskUtils.java
index ea88cdb..98c55c6 100644
--- a/extide/gradle/src/org/netbeans/modules/gradle/actions/ActionToTaskUtils.java
+++ b/extide/gradle/src/org/netbeans/modules/gradle/actions/ActionToTaskUtils.java
@@ -88,12 +88,20 @@
             }
         }
 
-        ProjectActionMappingProvider mappingProvider = project.getLookup().lookup(ProjectActionMappingProvider.class);
+        ProjectActionMappingProvider mappingProvider = null;
+        
+        for (ProjectActionMappingProvider prov : project.getLookup().lookupAll(ProjectActionMappingProvider.class)) {
+            if (!(prov instanceof ConfigurableActionProvider)) {
+                mappingProvider = prov;
+                break;
+            }
+        }
         // in case the Mapping Provider asks for the configuration, it should get some:
         if (mappingProvider == null) {
             return null;
         }
-        ActionMapping am = ProjectConfigurationSupport.executeWithConfiguration(project, c, () -> mappingProvider.findMapping(action));
+        ProjectActionMappingProvider mp = mappingProvider;
+        ActionMapping am = ProjectConfigurationSupport.executeWithConfiguration(project, c, () -> mp.findMapping(action));
         if (ActionMapping.isDisabled(am)) {
             return null;
         } else {
diff --git a/java/java.lsp.server/src/org/netbeans/modules/java/lsp/server/debugging/launch/NbLaunchDelegate.java b/java/java.lsp.server/src/org/netbeans/modules/java/lsp/server/debugging/launch/NbLaunchDelegate.java
index ec98d29..fda979e 100644
--- a/java/java.lsp.server/src/org/netbeans/modules/java/lsp/server/debugging/launch/NbLaunchDelegate.java
+++ b/java/java.lsp.server/src/org/netbeans/modules/java/lsp/server/debugging/launch/NbLaunchDelegate.java
@@ -301,14 +301,14 @@
                     };
                     DebuggerManager.getDebuggerManager().addDebuggerListener(listener);
                     debuggerListeners.put(context, listener);
-                } else {
-                    launchFuture.complete(null);
                 }
-                
                 Lookups.executeWith(launchCtx, () -> {
                     providerAndCommand.first().invokeAction(providerAndCommand.second(), lookup);
 
                 });
+                if (!debug) {
+                    launchFuture.complete(null);
+                }
             }).exceptionally((t) -> {
                 launchFuture.completeExceptionally(t);
                 return null;
diff --git a/java/java.lsp.server/vscode/src/test/runTest.ts b/java/java.lsp.server/vscode/src/test/runTest.ts
index 747a155..d8d174c 100644
--- a/java/java.lsp.server/vscode/src/test/runTest.ts
+++ b/java/java.lsp.server/vscode/src/test/runTest.ts
@@ -11,7 +11,7 @@
         // Passed to `--extensionDevelopmentPath`
         const extensionDevelopmentPath = path.resolve(__dirname, '../../');
 
-        const vscodeExecutablePath: string = await downloadAndUnzipVSCode('stable');
+        const vscodeExecutablePath: string = await downloadAndUnzipVSCode('1.56.2');
         const cliPath: string = resolveCliPathFromVSCodeExecutablePath(vscodeExecutablePath);
 
         cp.spawnSync(cliPath, ['--install-extension', 'hbenl.vscode-test-explorer'], {
diff --git a/java/java.lsp.server/vscode/src/test/suite/extension.test.ts b/java/java.lsp.server/vscode/src/test/suite/extension.test.ts
index 9a54548..e757b5b 100644
--- a/java/java.lsp.server/vscode/src/test/suite/extension.test.ts
+++ b/java/java.lsp.server/vscode/src/test/suite/extension.test.ts
@@ -181,7 +181,7 @@
                                 reject(new Error("Timeout waiting for user application"));
                                 return;
                             }
-                            setTimeout(() => waitUserApplication(cnt - 1, running, cb), 100);
+                            setTimeout(() => waitUserApplication(cnt - 1, running, cb), 1000);
                             return;
                         }
                     });