microsoft / microsoft/vscode-java-debug
Randomly Failed to lanuch debuggee in terminal: com.sun.jdi.connect.TransportTimeoutException
Nadie ha tomado este issue todavía.
- Lenguaje dominante
- TypeScript
- Estrellas
- 591
- Forks
- 429
- Merge medio
- 1 d 9 h
- PR fusionados (30 d)
- 19
Descripción
Randomly getting error: Failed to lanuch debuggee in terminal: com.sun.jdi.connect.TransportTimeoutException
Environment
- Operating System: Debian GNU/Linux 12 x86_64
- JDK version: openjdk 17.0.7
- Visual Studio Code version: 1.79.2 (vscodium)
- Java extension version: v0.25.2023042006
- Java Debugger extension version: v0.51.0
Steps To Reproduce
It occurs completely randomly, and can be for any java code.
I managed to reproduce it:
- Create a simple
Test.java.
sample project
package com;
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int i = scanner.nextInt();
}
}
- Start the program, enter
1in the terminal, pressEnter. - Repeat step 2 until error occurs. (10 ~ 30 repeats)
- After randomly repeating, from now on the program freezes every time, and after 20 seconds later a message always pops up, saying
Failed to lanuch debuggee in terminal. Reason: com.sun.jdi.connect.TransportTimeoutException
screenshot
launch.json
{
"version": "0.2.0",
"configurations": [
{
"type": "java",
"name": "Test",
"request": "launch",
"mainClass": "com.Test",
"projectName": "temp_43be885e"
},
{
"type": "java",
"name": "Current File",
"request": "launch",
"mainClass": "${file}"
},
{
"type": "java",
"name": "App",
"request": "launch",
"mainClass": "App",
"projectName": "temp_43be885e"
},
{
"type": "java",
"name": "Main",
"request": "launch",
"mainClass": "com.Main",
"projectName": "temp_43be885e"
}
]
}
It doesn't happens a lot when I try to reproduce it.
Java Language Server Log
!ENTRY java-debug 4 0 2023-06-22 18:15:38.087
!MESSAGE [error response][launch]: Failed to launch debuggee in terminal. Reason: com.sun.jdi.connect.TransportTimeoutException
!STACK 0
com.microsoft.java.debug.core.DebugException: Failed to launch debuggee in terminal. Reason: com.sun.jdi.connect.TransportTimeoutException
at com.microsoft.java.debug.core.adapter.handler.LaunchWithDebuggingDelegate.lambda$launchInTerminal$0(LaunchWithDebuggingDelegate.java:147)
at java.base/java.util.concurrent.CompletableFuture.uniWhenComplete(Unknown Source)
at java.base/java.util.concurrent.CompletableFuture$UniWhenComplete.tryFire(Unknown Source)
at java.base/java.util.concurrent.CompletableFuture.postComplete(Unknown Source)
at java.base/java.util.concurrent.CompletableFuture.complete(Unknown Source)
at com.microsoft.java.debug.core.protocol.AbstractProtocolServer.lambda$sendRequest$2(AbstractProtocolServer.java:178)
at io.reactivex.internal.observers.LambdaObserver.onNext(LambdaObserver.java:63)
at io.reactivex.internal.operators.observable.ObservableObserveOn$ObserveOnObserver.drainNormal(ObservableObserveOn.java:201)
at io.reactivex.internal.operators.observable.ObservableObserveOn$ObserveOnObserver.run(ObservableObserveOn.java:255)
at io.reactivex.internal.schedulers.ScheduledRunnable.run(ScheduledRunnable.java:66)
at io.reactivex.internal.schedulers.ScheduledRunnable.call(ScheduledRunnable.java:57)
at java.base/java.util.concurrent.FutureTask.run(Unknown Source)
at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(Unknown Source)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.base/java.lang.Thread.run(Unknown Source)
Additional Informations
- It occurs completely randomly, and can be for any java code.
- Cleaning java workspace could temporarily fix.
- Downgrading the extension to 0.50.0 doesn't fix it. It didn't occur to me in the few months ago.
- Downgrading the extension to 0.49.0 and 0.46.0, doesn't seem to be able to reproduce (but it's hard to tell because it is random).
- Adding
"java.debug.settings.console":"internalConcole"inUser/settings.jsonseems to fix it, but I cannot use the terminal to enter inputs now. reference
### Tasks
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Línea de trabajo
Comience con LaunchWithDebuggingDelegate.java en la línea 147, donde el stack trace informa del fallo de lanzamiento en el terminal. Reproduzca el problema con el programa Test.java mostrado introduciendo 1 repetidamente y compare el comportamiento con la configuración de la consola del terminal activada o desactivada. Se considera terminado cuando los lanzamientos repetidos ya no se bloquean ni terminan con TransportTimeoutException.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- java, typescript, vscode
- Área
- devtools
- Tipo de issue
- Error
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Estado de actividad
- Estancado
- Claridad
- Necesita aclaración
- Aptitud para principiantes
- 35/100