redhat-developer / redhat-developer/vscode-java

Refactoring extraction methods leads to naming conflicts

Offen
#3,593 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

potential-duplicate
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:

  1. select "extracted();'
  2. click “Refacator-Extract to method”
  3. new method name " extractedMethod() "

class ExtractMethodTest {
public void originalMethod() {};
public void methodA() {
// Extracted method
extracted();
}
private void extracted() {
extractedMethod();
}
private void extractedMethod() {
// TODO Auto-generated method stub
}
public void methodB() {
extracted();
}
}

refactoring result:
image

Reason: When extracting the method, there was no detection of naming conflicts between the new method name and the context

Expected behavior: Check for naming conflicts before and after refactoring, and provide warning prompts

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Reproduziere den Java-Ablauf „Refactor-Extract to method“ mit der bereitgestellten Klasse auf dem aufgeführten Setup aus Windows 11, JDK 17 und VS Code 1.88 unter Verwendung des Einstiegspunkts der Java-Erweiterung. Verfolge, wie der angeforderte Name extractedMethod gegen die umgebende Klasse geprüft wird, und überprüfe anschließend, dass ein Konflikt erkannt und vor oder nach dem Refactoring eine Warnung angezeigt wird.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
java, typescript
Bereich
tooling
Issue-Typ
Bug
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.