microsoft / microsoft/vscode-java-debug
Extension incorrectly runs cached `.class` file from another class of same name with no `package`
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
Bug report
Suppose there is a file structure:
folder1/
Main.java
folder2/
Main.java
// folder1/Main.java
public class Main {
public static void main(String[] args) {
System.out.println("Main 1");
}
}
// folder2/Main.java
public class Main {
public static void main(String[] args) {
System.out.println("Main 2");
}
}
No package statements; the projects are not connected at all.
When folder1/Main.java is run first, it gives the correct output Main 1.
But if folder2/Main.java is then run, it gives the wrong output of Main 1 instead of Main 2; the first built file is run instead.
folder1/Main.java 'shadows' folder2/Main.java, since the class name is the same and there are no package statements.
Another file structure that causes this is ./Main.java, ./folder/Main.java
This bug is inconvenient when multiple different, unrelated Java projects are in the same workspace.
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
Reproduce el problema ejecutando folder1/Main.java y después folder2/Main.java, incluido el diseño ./Main.java y ./folder/Main.java. Rastrea cómo la extensión selecciona las clases compiladas en caché; se considera terminado cuando cada Main.java no relacionado ejecuta su propia salida, incluso después de que el otro archivo ya se haya ejecutado.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- java, typescript, vscode
- Área
- developer-experience, devtools
- Tipo de issue
- Error
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Estado de actividad
- Estancado
- Claridad
- Bien especificado
- Aptitud para principiantes
- 45/100