redhat-developer / redhat-developer/vscode-java

No code action or quick fix available on remote

Offen
#1,746 2 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

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:
Server Windows 10 Enterprise LTSC 1809 17763.1577
Client Windows 10 Professional 20H2 19042.685
  • JDK version:
openjdk version "1.8.0_275"
OpenJDK Runtime Environment (AdoptOpenJDK)(build 1.8.0_275-b01)
OpenJDK 64-Bit Server VM (AdoptOpenJDK)(build 25.275-b01, mixed mode)
  • Visual Studio Code version: 1.52.1
  • Java extension version: vscjava.vscode-java-pack 0.12.1 redhat.java 0.73.0
Steps To Reproduce
  1. Connect to SSH based server (vscode remote development)
  2. Install Java extension pack "vscjava.vscode-java-pack"
  3. Open a folder and a java file
  4. Remove one of the import line
  5. See "Predicate cannot be resolved to a type" or something with a type name
  6. "Ctrl+." to trigger quick fix
  7. No quick fix available

[Please attach a sample project reproducing the error]

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.function.Consumer;
//import java.util.function.Predicate;

class Person {
    public Person(int age, Sex gender) {
        this.age = age;
        this.gender = gender;
    }

    public enum Sex {
        MALE, FEMALE
    }

    public int age;
    public Sex gender;

    void printPerson() {
        System.out.println("Age: " + age);
    }
}

class MyClass {
    public static void printPersons(List<Person> roster, Predicate<Person> tester, Consumer<Person> block) {
        for (Person p : roster) {
            if (tester.test(p)) {
                block.accept(p);
            }
        }
    }
}

class HelloWorldApp {
    public static void main(String[] args) {
        MyClass.printPersons(
                new ArrayList<Person>(
                        Arrays.asList(new Person(19, Person.Sex.MALE), new Person(15, Person.Sex.FEMALE))),
                (Person p) -> p.gender == Person.Sex.MALE && p.age >= 18 && p.age <= 25,
                (Person p) -> System.out.println(p.age));
    }
}

Please attach logs
client.log
server.log

Current Result
Expected Result
Additional Informations

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

Beginne damit, den fehlenden Quick Fix anhand der aufgeführten VS Code Remote SSH-Schritte zu reproduzieren, und prüfe anschließend client.log und server.log auf die Anfrage und den Fehler des Java-Sprachservers. Als erledigt gilt die Aufgabe, wenn der Quick Fix für fehlende Importe für die entfernte Java-Datei verfügbar ist und sich das mitgelieferte Beispielprojekt wie erwartet verhält.

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
Muss geklärt werden
Anfängerfreundlichkeit
25/100

Neue Issues direkt in Ihr Postfach

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