microsoft / microsoft/java-debug
Feature Request: Allow specifying the address when binding to a port
Nadie ha tomado este issue todavía.
- Lenguaje dominante
- Java
- Estrellas
- 409
- Forks
- 204
- Merge medio
- 1 d 13 h
- PR fusionados (30 d)
- 4
Descripción
When opening a Java debugging session in my local machine, I'd prefer to be able to have the TCP port that the debug server will bind to in the loopback interface instead of in all of them, mostly out of paranoia when I'm working on a shared WiFi.
Also (and maybe less interesting to other folks), at replit.com, we detect TCP ports bound to 0.0.0.0 and treat them magically as web servers, so this should also prevent opening a debug session causing an unintended web server from being "deployed".
So I would like for it to be specify what interface and/or port the JavaDebugServer should bind to. Since the JavaDebugServer is a singleton, it might make sense to configure this through a system property (since sending this configuration in the initialize message may not have the intended effect if the LSP process had already spawned one JavaDebugServer instance). So something like
$ java \
-Declipse.application=org.eclipse.jdt.ls.core.id1 \
-Dosgi.bundles.defaultStartLevel=4 \
-Declipse.product=org.eclipse.jdt.ls.core.product \
-Dcom.microsoft.java.debug.serverAddress=localhost:12345 \ # <- a brand new property
-noverify \
-Xmx256m \
-jar ../jdt/plugins/org.eclipse.equinox.launcher_1.6.100.v20201223-0822.jar \
-configuration ../jdt/config_linux \
-data /home/runner/JavaDAP \
--add-modules=ALL-SYSTEM \
--add-opens', 'java.base/java.util=ALL-UNNAMED \
--add-opens', 'java.base/java.lang=ALL-UNNAMED
should do the trick.
Guía de contribución
No hay ninguna guía de contribución indexada para este repositorio
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
Comienza localizando JavaDebugServer y el código que enlaza su servidor de depuración TCP; después, inspecciona cómo se gestionan las propiedades del sistema en el momento del lanzamiento. Se considera completado cuando el servidor de depuración puede configurarse con una interfaz y un puerto solicitados, incluido loopback, sin romper su comportamiento de inicio existente.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- java
- Área
- devtools, networking
- Tipo de issue
- Nueva funcionalidad
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Estado de actividad
- Estancado
- Claridad
- Bastante claro
- Aptitud para principiantes
- 28/100