redhat-developer / redhat-developer/vscode-java
Extracting local variables and refactoring leads to naming conflicts
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- TypeScript
- Sterne
- 2.3k
- Forks
- 546
- Ø Merge
- 20 Std. 1 Min.
- Gemergte PRs (30 T.)
- 11
Beschreibung
[provide a description of the issue]
Environment
Operating System: Windows11
JDK version: 17
Visual Studio Code version: 1.88
Java extension version: 1.29
Steps To Reproduce
- select "20"
- click “Refacator-Extract local variable”
- new variable name " existingVariable"
public class OriginalClass {
public void method() {
int existingVariable = 10;
// extract variable "20" , name :"existingVariable"
System.out.println(20);
}
}
refactoring result:
Reason: When extracting local variables, there was no detection of naming conflicts between the new variable name and the context
Expected behavior: Check for naming conflicts before and after refactoring, and provide warning prompts
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Reproduzieren Sie das gemeldete Refactoring „Extract local variable“ in VS Code mit den aufgeführten Java- und Extension-Versionen unter Verwendung des bereitgestellten Beispiels OriginalClass und eines Namens existingVariable. Verfolgen Sie den Einstiegspunkt des Refactorings, um zu bestimmen, wo Konflikte geprüft werden. Als abgeschlossen gilt die Aufgabe, wenn der Konflikt vor oder nach dem Refactoring erkannt und eine Warnung angezeigt wird, anstatt stillschweigend das konfliktbehaftete Ergebnis zu erzeugen.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- java, typescript, vscode
- Bereich
- developer-experience, tooling
- Issue-Typ
- Bug
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 35/100