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
Durch das Herunterladen des neuesten Eclipse Neon, d
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:
File -> Exit
und öffnen Sie es erneut. von hier aus genommenmvn clean
auszuführen, um sicherzustellen, dass Sie Ihre Klassen neu kompiliert haben. von hier aus genommenMaven -> Update Project
hierher genommenEs gibt eine manuelle Möglichkeit, lombok
unter Eclipse zu installieren. Ich habe es nicht geprüft, aber es hilft Ihnen vielleicht -
kopieren Sie lombok.jar
in den Ordner, in dem sich Ihr Eclipse-Ordner befindet, in dem sich Eclipse.ini
befindet.
open Eclipse.ini
, Am Ende die beiden unteren Zeilen einfügen und speichern
-Xbootclasspath/a:lombok.jar
-javaagent:lombok.jar
Eclipse
neu starten.
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.
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
Und der Besitzer des Lombok-Projekts rzwitserloot hat 3 Vorschläge zur Überprüfung gemacht
'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.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.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.
Nun sollte Ihr Eclipse-Installationsordner die Datei lombok.jar und Eclipse.ini die Zeile - javaagent: /lombok.jar enthalten
Führen Sie den Eclipse aus dem Installationsordner aus. Reinigen Sie das Projekt und erstellen Sie es neu. Es sollte jetzt funktionieren!
probieren Sie die @Data-Annotation für die Klasse aus.
public @Data class user{
\\do stuff
}
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
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
Um auf die obigen Antworten einzugehen:
PROBLEM:
In meinem Szenario:
Eclipse Photon
installiert, Spring Boot/Gradle build
-Projekt erstellt, und ich habe den Fehler "undefined method" bei der Verwendung von Lombok@Data
erhalten. LÖSUNG:
HINWEIS:
Java -jar lombok*.jar
zeigt eine GUI an
lombok-xyz.jar
in den Eclipse-Installationsordner als lombok.jar
.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,
.m2\repository\org\projectlombok\lombok\1.18.6>
Java -jar .\lombok-1.18.6.jar
(oder welche Version auch immer Sie habenJetzt 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 -vmargs
so 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.ja
wie andere antworten in diesem thread vermuten lassen.
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.
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
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
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