microsoft / microsoft/vscode-java-debug
Extension incorrectly runs cached `.class` file from another class of same name with no `package`
Nessuno ha ancora preso questa issue.
- Lingua principale
- TypeScript
- Stelle
- 591
- Fork
- 429
- Merge medio
- 1g 9h
- PR unite (30g)
- 19
Descrizione
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.
Guida per i contributori
Apri la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Direzione di ricerca
Riproduci il problema eseguendo folder1/Main.java e poi folder2/Main.java, includendo la struttura ./Main.java e ./folder/Main.java. Traccia il modo in cui l’estensione seleziona le classi compilate memorizzate nella cache; il lavoro è completato quando ogni Main.java non correlato esegue il proprio output, anche dopo che l’altro file è già stato eseguito.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- java, typescript, vscode
- Ambito
- developer-experience, devtools
- Tipo di issue
- Bug
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Stato di attività
- Ferma
- Chiarezza
- Specificata chiaramente
- Idoneità per principianti
- 45/100