webentwicklung-frage-antwort-db.com.de

Lombok funktioniert nicht für Eclipse Neon

Ich habe lombok.jar (lombok-1.16.14.jar) heruntergeladen und in meine Downloads eingefügt. Dann habe ich auf dieses Glas geklickt, die Ausführung identifiziert die Eclipse-Instanzen auf meinem MacOS richtig und dann habe ich die Instanz ausgewählt, die ich möchte. Lombok ist auch in der Datei pom.xml .__ angegeben. org.projectlombok Lombok 1.16.14 unter der Voraussetzung 

In Eclipse.ini bekam ich den Zusatz: - javaagent: ../ Eclipse/lombok.jar

lombok.jar wurde zum selben Verzeichnis wie eclise.ini/Applications/Eclipse.app/Contents/Eclipse hinzugefügt

Ich bekomme immer noch Setzer-/Getter-Fehler in Eclipse-Problemen, obwohl meine mvn-Version einwandfrei funktioniert.

Der Code für einen Benutzer:

@Entity
@Getter
@Setter
@NoArgsConstructor
@AllArgsConstructor
@EntityListeners(UserListener.class)
public class User implements Serializable, UserDetails {
...

Der Fehler:

The method getRole() is undefined for the type User 
15
Alex

Durch das Herunterladen des neuesten Eclipse Neon, d

1
Alex

Da Sie die .jar-Datei bereits zu Ihrem lib-Ordner hinzugefügt haben, gehen Sie zu lib Und führen Sie Java -jar lombok-1.16.4.jar aus. Daraufhin wird ein Assistent angezeigt. Geben Sie den Speicherort Ihrer Eclipse.ini-Datei an, nachdem Ihre Eclipse.ini-Datei fertig ist so was:

    -vmargs
    ...
    -javaagent:lombok.jar
    -Xbootclasspath/a:lombok.jar

Für mich hat das einfach gut funktioniert, aber ich habe in anderen Antworten gefunden, dass:

  • Sie sollten Eclipse nicht nur "neu starten", gehen Sie zu File -> Exit und öffnen Sie es erneut. von hier aus genommen
  • Vergessen Sie nicht, einen mvn clean auszuführen, um sicherzustellen, dass Sie Ihre Klassen neu kompiliert haben. von hier aus genommen
  • Nach all dem sollten Sie auch mit der rechten Maustaste auf Ihr Projekt klicken und dann Maven -> Update Projecthierher genommen
33
imTachu

Es gibt eine manuelle Möglichkeit, lombok unter Eclipse zu installieren. Ich habe es nicht geprüft, aber es hilft Ihnen vielleicht -

  1. kopieren Sie lombok.jar in den Ordner, in dem sich Ihr Eclipse-Ordner befindet, in dem sich Eclipse.ini befindet.

  2. open Eclipse.ini , Am Ende die beiden unteren Zeilen einfügen und speichern

    -Xbootclasspath/a:lombok.jar
    -javaagent:lombok.jar
    
  3. Eclipse neu starten.

10
Yu Jiaao

Ich hatte das Problem, dass der Link, mit dem ich Eclipse startete, die Eclipse.ini-Datei nicht respektierte .

Meine Umgebung ist:

IDE: Version: Neon.0 Release (4.6.0)
OS: Ubuntu 16.04.2 LTS

Die Installationsroutine Java -jar lombok-1.16.16.jar funktioniert ziemlich gut. Das heißt es fügt die sinnvolle Zeile -javaagent:<ABSOLUTE_PATH_TO_Eclipse_INSTALLATION>/lombok.jar zum Eclipse.ini hinzu.

Wenn ich Eclipse jedoch mit mit meinem Desktop-Shortcut starte, startet es ohne lombok (überprüft unter "Hilfe" -> "Über Eclipse") . Wenn ich Eclipse mit der ausführbaren Datei Eclipse starte, starte ich In der Eclipse.ini-Datei startet Lombok wie ein Zauber.

Daher habe ich meine Desktop-Verknüpfung (z. B. ~/.local/share/applications/Eclipse.desktop) überprüft und tatsächlich Eclipse gestartet, ohne den Eclipse.ini..__ zu berücksichtigen. Stattdessen verwendet es etwas wie /usr/bin/Java -jar org.Eclipse.equinox.launcher.jar ..., um Eclipse zu starten.

Die Lösung bestand also darin, die alte Exec-Zeile in der Desktop-Verknüpfung durch Folgendes zu ersetzen:

Exec=/opt/Eclipse/neon/Eclipse

wo /opt/Eclipse/neon/ ist der Ort, an dem ich Eclipse installiert habe.

5
mam10eks

Antoniolazaro hat eine Lösung für Eclipse Neon auf MacOS gegeben

Wenn ich den vollständigen Pfad eingebe, funktioniert er auf Mac OS.

-javaagent:/Applications/Eclipse.app/Contents/Eclipse/lombok.jar

Ressourcenlink:

  1. https://github.com/rzwitserloot/lombok/issues/1173

Und der Besitzer des Lombok-Projekts rzwitserloot hat 3 Vorschläge zur Überprüfung gemacht

  1. Können Sie uns den vollständigen Pfad Ihrer Eclipse -Installation von root angeben? Ab dem 1.16.14 sollte das Installationsprogramm immer noch __. Eclipse finden, selbst wenn die funkigen Pfade, die das OOM-Installationsprogramm. Ich habe keine Ahnung, warum der Installer Ihre Eclipse Hier nicht automatisch findet. Ich kann das auf meinem Mac nicht reproduzieren.
  2. Das Lombok-Deinstallationsprogramm hat die gleiche 'find eclipses'-Fähigkeit wie das Installationsprogramm Mac doesn't have a registry and we aren't going to dump a bunch of crud in your homedir just to keep track of where we installed your lombok; wir mögen es so: Keine Cruft. Daher ist dieser Teil .__ (der das Deinstallationsprogramm keinen benutzerdefinierten Installationsort finden kann und es erforderlich ist, ihn erneut anzugeben.) Kein Fehler.
  3. Sie müssen Ihrem Projekt noch lombok.jar als Abhängigkeit hinzufügen Wie jede andere Abhängigkeit von Drittanbietern (z. B. Guava, für Beispiel). Aus Ihrer Problembeschreibung geht nicht klar hervor, ob Sie das tatsächlich getan haben.

Ressourcenlink:

https://github.com/rzwitserloot/lombok/issues/1310

5
SkyWalker

Selbst wenn Sie die folgenden Schritte befolgen (versuchen Sie es zuerst mit den folgenden Schritten), kann dies ein Problem sein, wenn Sie Eclipse vom Desktop aus verwenden, nicht aus dem Ordner, in dem Eclipse installiert ist. Beim Ausführen von Eclipse vom Desktop aus kann die .ini-Datei manchmal nicht geladen werden. Daher wird Lombok nicht ausgeführt. Also, versuchen Sie, Eclipse in dem Ordner auszuführen, in dem Sie es installiert haben.

Schritte: 1. Geben Sie die Lombok-Abhängigkeit im Pom an und bauen Sie sie auf.

  1. Die Datei lombok.jar wird normalerweise in den Ordner .m2/repository/org/projectlombok/lombok/1.x.y heruntergeladen.
  2. Installieren Sie das jar im Ordner "Java -jar lombok-1.x.y.jar"
  3. Dann werden Sie aufgefordert, die IDE auszuwählen. Navigieren Sie zum Ordner Eclipse-Installation Und wählen Sie dort Eclipse aus.
  4. Nun sollte Ihr Eclipse-Installationsordner die Datei lombok.jar und Eclipse.ini die Zeile - javaagent: /lombok.jar enthalten

  5. Führen Sie den Eclipse aus dem Installationsordner aus. Reinigen Sie das Projekt und erstellen Sie es neu. Es sollte jetzt funktionieren!

2
moovon

probieren Sie die @Data-Annotation für die Klasse aus.

public @Data class user{
 \\do stuff
 }
1
mike

Meine Umgebung ist:

IDE: Version: Neon.3 Release (4.6.3)
OS: Ubuntu 16.4

Es funktioniert für mich, wenn ich diese Schritte unten mache:

1. copy `lombok.jar` to where your Eclipse folder where is the `Eclipse.ini` ;
2. open `Eclipse.ini`,put at end the two lines below with full lombok path and save it:
    -Xbootclasspath/a:/DEV/Tools/IDE/Eclipse/jee-neon/lombok.jar
    -javaagent:/DEV/Tools/IDE/Eclipse/jee-neon/lombok.jar
3. restart  `Eclipse` in command line (when i try run with exist link in launcher it's not work)
4. rebuild your projects
1
rafambbr

Ich habe dieses Problem vor kurzem konfrontiert und alle oben genannten Lösungen der oben genannten Benutzer haben nicht funktioniert. Das Problem, das ich hatte, war, dass es spezielle Symbole wie '$' im Pfad (dieser befindet sich in der letzten Zeile der Eclipse.ini-Datei) zu Eclipse gibt. Aus dem gleichen Grund kann lombok die Datei nicht identifizieren und die erforderlichen zwei Zeilen in der Datei Eclipse.ini anhängen. Das Entfernen der Sonderzeichen wie '-', '$', '_' in meinem Eclipse-Pfad hat mein Problem behoben

0
Sushi kumar

Um auf die obigen Antworten einzugehen:

  • PROBLEM:

    In meinem Szenario: 

    1. Ich habe SpringBoot STS unter Eclipse Photon installiert, 
    2. Ich habe einSpring Boot/Gradle build-Projekt erstellt, und ich habe den Fehler "undefined method" bei der Verwendung von Lombok@Data erhalten. 
    3. Umgebung: Ubuntu Linux 18.04.
  • LÖSUNG: 

    1. cd ~/.gradle/cache /.../ lombok/...; 
    2. Java-Jar Lombok-1.16.22.Jar
  • HINWEIS: 

    Java -jar lombok*.jar zeigt eine GUI an 

    1. Hier können Sie auswählen, welche Eclipse-Installation aktualisiert werden soll.
    2. Aktualisierungen Eclipse.iniUND...
    3. Kopiert lombok-xyz.jar in den Eclipse-Installationsordner als lombok.jar.
0
paulsm4

Obwohl es hier bereits viele Antworten gibt, hat keine der angegebenen Antworten mein Problem gelöst. Daher werde ich meine Informationen auch hier hinzufügen, falls dies jemandem helfen könnte:

My setup is:
Win10 Home,
Eclipse Version: Oxygen.3a Release (4.7.3a),
Eclipse Build id: 20180405-1200,
  1. Füge lombok zu meiner pom.xml hinzu
  2. mvn sauber installieren
  3. eclipse schließen
  4. navigiere zu meinem .m2 Ordner .m2\repository\org\projectlombok\lombok\1.18.6>
  5. lauf: Java -jar .\lombok-1.18.6.jar (oder welche Version auch immer Sie haben
  6. Installieren Sie lombok

Jetzt wird es interessant. Die Installation fügte meiner Eclipse.ini Folgendes hinzu:

-javaagent:lombok.jar

Wie auch immer, es hat sie am Ende meiner INI-Datei platziert. So sah es also aus.

--launcher.appendVmargs
-vmargs
-...
--add-modules=ALL-SYSTEM
-javaagent:lombok.jar

Ich nahm an, dass -javaagent:lombok.jar gehört unter -vmargsso habe ich es am unteren Rand von --launcher.appendVmargs. Das hat aber auch nicht funktioniert. Aber wenn ich -javaagent:lombok.jar direkt unter vmargs funktioniert es. Letztendlich sieht meine Eclipse.ini so aus:

--launcher.appendVmargs
-vmargs
-javaagent:lombok.jar # lombok works for me if this is here
-Declipse.p2.max.threads=10
- Doomph.update.url=http://download.Eclipse.org/oomph/updates/milestone/latest
-Doomph.redirection.index.redirection=index:/->http://git.Eclipse.org/c/oomph/org.Eclipse.oomph.git/plain/setups/
-Dosgi.requiredJavaVersion=1.8
[email protected]/Eclipse-workspace
-XX:+UseG1GC
-XX:+UseStringDeduplication
#-javaagent:lombok.jar | lombok doesn't work for me if its placed here.
--add-modules=ALL-SYSTEM
-Dosgi.requiredJavaVersion=1.8
-Xms256m
-Xmx1024m

Ich bin nicht sicher, warum dieses Problem auftritt, aber vielleicht hilft es Ihnen. Wenn Sie unter macOS arbeiten, denken Sie daran, -Xbootclasspath/a:lombok.jawie andere antworten in diesem thread vermuten lassen.

0

beenden Sie Eclipse und wechseln Sie in das Eclipse-Verzeichnis. Öffnen Sie Eclipse.ini und fügen Sie -clean oben hinzu und führen Sie Eclipse erneut aus. hoffe dein problem ist gelöst.

0
Somnath Singh

Für mich verwende ich eine "Chocolatey" -Verteilung von Eclipse unter Windows.

Es ändert sich nicht viel. Für diejenigen von Ihnen, die kein Administrator ihres Desktops sind, kann dies ein Problem sein, da Chocolatey Software in C:\ProgramData\... installiert, einem "admin" -Verzeichnis.

Mit anderen Worten, Sie müssen möglicherweise die Eigenschaft "start in" Ihrer Verknüpfung ändern. Dies ist nur möglich, wenn Sie Administrator Ihres Desktops sind.

Der Trick, der für mich funktioniert hat, war das Erstellen einer neuen Verknüpfung, die die korrekte Eigenschaft "start in" hat, um Eclipse in dem Verzeichnis zu starten, in dem sich die Eclipse.ini befindet.

Dann kompilieren Sie sie erneut mit Eclipse und arbeiten Sie dann ein wenig an Ihrem Projekt, bis Eclipse feststellt, dass Lombok installiert wurde ...

Prost

0
avi.elkharrat

Denn nach der Installation von lombok, wie oben erwähnt, musste ich mit der rechten Maustaste auf Ihren Projektordner klicken -> Ausführen als -> Maven clean. Ne die .jar wird erkannt und richtig benutzt

0
medTech

Nach der Installation von lombok müssen Sie lombok.jar in Ihr Projekt kopieren oder Abhängigkeiten in der Maven-Konfigurations-XML-Datei hinzufügen

0
loc huynh