web-dev-qa-db-fra.com

Problèmes de Lombok avec l'oxygène Eclipse

Je suis récemment passé à la nouvelle version Eclipse (Oxygen). J'ai téléchargé le fichier lombok.jar sur le site Web et je l'ai installé. Voici à quoi ressemble le Eclipse.ini après l'installation:

-startup
plugins/org.Eclipse.equinox.launcher_1.4.0.v20161219-1356.jar
--launcher.library
C:\Users\xxx\.p2\pool\plugins\org.Eclipse.equinox.launcher.win32.win32.x86_64_1.1.500.v20170531-1133
-product
org.Eclipse.epp.package.jee.product
-showsplash
org.Eclipse.epp.package.common
--launcher.defaultAction
openFile
--launcher.appendVmargs
-vmargs
-Dosgi.requiredJavaVersion=1.8
[email protected]/Eclipse-workspace
-XX:+UseG1GC
-XX:+UseStringDeduplication
-Dosgi.requiredJavaVersion=1.8
-Xms256m
-Xmx1024m
-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/
-javaagent:lombok.jar

Je peux utiliser Lombok comme vu ici:

pojoclassoutlineinfo

Mais lorsque j'utilise les getters/setters et/ou les constructeurs dans d'autres classes, j'obtiens les erreurs suivantes:

codeInfoenter image description here

Voici aussi mes versions Eclipse et Lombok:

Eclipse Java EE IDE for Web Developers.
Version: Oxygen Release (4.7.0)
Build id: 20170620-1800
Lombok v1.16.18 "Dancing Elephant" is installed. https://projectlombok.org/

Quelqu'un sait comment je peux le réparer?

32
Alex P.

Mon env: Java version "1.8.0_144"

Eclipse: Eclipse Java EE IDE pour les développeurs Web. Version: libération d'oxygène (4.7.0) ID de la version: 20170620-1800

  1. Quittez Eclipse (s'il est ouvert) et téléchargez le fichier jar de https://projectlombok.org/download

  2. exécuter la commande: Java -jar lombok.jar

  3. Cette commande ouvrira la fenêtre comme indiqué ici https://projectlombok.org/setup/Eclipse , installe et quitte le programme d'installation.

  4. Ajoutez un fichier jar pour créer le chemin/ajoutez-le à pom.xml.

  5. redémarrez Eclipse.

  6. Allez dans Eclipse -> À propos d'Eclipse -> vérifiez que "Lombok v1.16.18" Dancing Elephant "est installé. https://projectlombok.org/ '
  7. Pour activer Lombok pour le projet: Enable annotation processing dans l'IDE correspondant. C'est ça. Ça a marché. Je n'ai pas changé le script init Eclipse.

Remarque: lisez la remarque dans l'image suivante concernant les options -vm . Si vous démarrez Eclipse avec un paramètre -vm personnalisé, vous devrez ajouter:

-vmargs -javaagent:<path-to-lombok-jar>/lombok.jar

comme paramètre également

Les étapes ci-dessus fonctionnent pour Photon Release (4.8.0) - Lombok v1.18.2, Eclipse: Oxygen.3a Release (4.7.3a) - Lombok v1.18.0 et Eclipse: Neon.3 Release (4.6.3) - Lombok v1.18.2

écran de réussite de lombok: enter image description here

65
dkb

Pour les utilisateurs de MacBook Pro (par exemple, exécuter macOs Sierra v10.12.6), afin d’installer lombok sur Eclipse Oxygen (4.7.0) ou Photon (4.8.0) , en utilisant Java 1.8 (1.8.0_144), procédez comme suit:

  1. Téléchargez lombok à partir du site Projet Lombok ;
  2. Fermez votre Eclipse IDE s'il est ouvert;
  3. Déclenchez l'installation de lombok en suivant les étapes d'installation officielles ou en exécutant la commande: Java -jar lombok.jar;
  4. Si le programme d'installation lombok ne trouve pas votre IDE Eclipse, il vous sera demandé de saisir le chemin d'accès à votre Eclipse. Vous devez entrer le chemin d'accès à votre fichier Eclipse.ini . Dans mon cas, c'était /tools/ide/Eclipse/jee-oxygen/Eclipse.app/Contents/Eclipse/eclipse.ini.
  5. Quittez le programme d'installation et ouvrez Eclipse.
  6. Dans la barre de menus, accédez à Eclipse> À propos d'Eclipse et vérifiez que lombok est installé:

    Lombok v1.16.18 "Dancing Elephant" is installed. https://projectlombok.org/
    

    Assurez-vous de faire défiler la fenêtre de texte vers le bas car la version de Lombok installée apparaît dans le texte au-dessus de la rangée d’icônes.

  7. Enfin, ajoutez lombok au chemin de génération de votre projet en fonction de l'outil de construction utilisé. Pour Maven, par exemple, utilisez la dépendance suivante:

    <dependency>
        <groupId>org.projectlombok</groupId>
        <artifactId>lombok</artifactId>
        <version>1.16.18</version>
        <scope>provided</scope>
    </dependency>
    
23
aribeiro

Eu des problèmes avec Eclipse Oxygen, Java 1.9 et Lombok (sur Mac OSX - Windows/Linux devrait être similaire) .

C'est ce que je devais faire:

  1. Téléchargez la dernière lombok: 1.16.20
  2. Ouvrez Eclipse, vérifiez les mises à jour et installez-les toutes. Assurez-vous qu'Eclipse est mis à jour au plus tard.
  3. Quittez Eclipse.
  4. Java -jar lombok.jar
  5. Assurez-vous que l'emplacement sur Eclipse est correct dans la fenêtre du programme d'installation qui s'ouvre. J'ai dû spécifier explicitement: /[some-folder-heirarchy]/Eclipse.app/Contents/Eclipse/eclipse.ini

Ensuite, vérifiez si les mises à jour ont été effectuées dans Eclipse.ini:

-javaagent:/[some_folder-hierarchy]/Eclipse-oxygen/Eclipse.app/Contents/Eclipse/lombok.jar

Il y a ne seule ligne est mise à jour. Cela diffère de certaines des versions précédentes de lombok où un bootclasspath était également spécifié et/ou le chemin d'accès à lombok.jar était relatif. Maintenant c'est un chemin absolu.

Amenez Eclipse et vous verriez Lombok en action.

Et n'oubliez pas d'utiliser la même version Lombok dans votre maven ou tout autre outil de gestion des dépendances.

Edit 1: J'ai également utilisé une version différente de Lombok dans le maven POM de celle installée dans Eclipse et pour la plupart des choses compilées, mais il y avait quelques erreurs de compilation dans Eclipse. Bien sûr, les choses compilées avec succès sur la ligne de commande avec maven. Donc, si vous avez des dépendances de projet qui vous obligent à utiliser différentes versions de Lombok, alors soyez au courant d'une telle éventualité. Le même noeud doit avoir la même version installée à la fois dans Eclipse et dans la gestion des dépendances de votre projet (maven etc.).

7
Khanna111

N'utilisez pas les anciennes versions de Java.

Qu'est-ce qui se passe, c'est que lombok met la ligne suivante dans votre fichier Eclipse.ini:

-javaagent: lombok.jar

Et lombok.jar est dans le répertoire C:\Eclipse\jee-oxygen\Eclipse

Le problème est que le raccourci créé par l'installation de Windows ressemble à ceci:

enter image description here

Remplissez le chemin "Commencer à" et cela fonctionnera:

enter image description here

5
Fabiano Costa Leite

J'ai eu exactement le même problème avec Alex. Ma version Eclipse est

Version: Version Oxygen.1a (4.7.1a) Identifiant de construction: 20171005-1200

J'ai installé lombok 1.16.18, après avoir vérifié qu'il était déjà installé et que javaagent a également été ajouté à mon fichier Eclipse.ini.

Tout allait bien sauf qu'il y a des erreurs de compilation où getter est appelé dans le projet. C'est gênant mais j'ai fixé par:

  1. Projet de nettoyage

  2. Projet de construction

  3. Redémarrer Eclipse plusieurs fois

Rien d'autre.

4
keichee

Solution:

  1. Installez lombok 1.16.18 en suivant les instructions du site Web de lombok. C'est mieux Eclipse est proche lors de l'installation.

  2. Assurez-vous qu'Eclipse peut démarrer correctement. Sur le raccourci, modifiez les propriétés et indiquez le chemin "Démarrer dans" et cela fonctionnera comme indiqué par Thomas et Fabiano.

  3. Une fois Eclipse ouvert, mettez à jour Maven sur le projet pour résoudre les erreurs de compilation.

  4. La dernière version de Lombok fonctionne désormais avec la dernière version d'Eclipse.

Pour référence:

Mon Eclipse: Oxygen

Version: Oxygen.2 Release (4.7.2)
Build id: 20171218-0600 

Mon JRE/JDK: 1.8

Java version "1.8.0_152"
Java(TM) SE Runtime Environment (build 1.8.0_152-b16)
Java HotSpot(TM) 64-Bit Server VM (build 25.152-b16, mixed mode)

lombok 1.16.18

4
Michael Qin

Pour les utilisateurs Linux/Ubuntu qui lancent Eclipse à partir d'un programme de lancement (un fichier .desktop) verrouillé sur votre programme de lancement, et que la boîte de dialogue Aide -> À propos de ne montre pas que lombok est installé:

  1. Fermer Eclipse
  2. Débloquez Eclipse depuis votre lanceur
  3. Démarrer Eclipse à partir de l'application .desktop
  4. Vérifiez que "Aide -> À propos de" indique que Lombok est installé (faites défiler vers le bas)
  5. Verrouillez à nouveau votre lanceur

Il semble que cela fonctionne en raison d'un problème avec le verrouillage des applications dans les applications, et c'est le processus de déverrouillage/verrouillage qui le résout.

(Merci au commentaire de cardamonici qui m'a indiqué cette solution)

3
Krease

J'ai eu le même problème, cependant, le développement original a été fait avec Lombok 1.16.10 et j'avais installé 1.16.18. Lorsque j'ai téléchargé et installé 1.16.10, tout a fonctionné. J'ai probablement eu besoin de faire quelques nettoyages et reconstructions pour que cela fonctionne avec .18, mais si vous êtes pressé, essayez-le.

2
Chris C

Lombok ne fonctionne pas pour Eclipse Neon

 - You should not just "restart" Eclipse, go to File -> Exit and then
   open it again.
 - Don't forget to do a mvn clean just to make sure that you recompiled your classes. 
 - After all this you should also right-click on your project, then Maven -> Update Project
2
Snehal Masne

Lombok avait également des problèmes d'oxygène Eclipse.

Ma solution: renvoyé de Java version 8u144 à 8u141.

Et je me réfère à lombok en ajoutant ceci à mon fichier Eclipse.ini:

-Xbootclasspath/c: /DEV/Tools/lombok-1.16.18/lombok.jar

-javaagent: /DEV/Tools/lombok-1.16.18/lombok.jar

1
Remon de Klerk

Avait un problème similaire mais ne me souviens vraiment pas de ce qui m'a aidé. Bien sûr, vous pouvez essayer de redémarrer Eclipse. Assurez-vous que vous avez mentionné le chemin Eclipse correct lors de l'installation de Lombok. C’est le sujet sur lequel vous pouvez trouver d’autres solutions possibles: Impossible de faire fonctionner Project Lombok sur Eclipse (Helios)

1
Michał Lis

Si redémarrer Eclipse ne vous aide pas. Vous devez quitter l'application et vous assurer de tuer tous les processus Java en cours d'exécution. Cela a fonctionné pour moi.

(Eclipse Oxygen 4.7.1a, OpenJDK 1.8.0_151-b12)

1
deniss-s

Quelques solutions, aucune n'a résolu mon problème.

Eclipse Oxygen 3a Avril 2018, l'installateur fonctionne bien,

Mon problème fonctionnait sous Eclipse sur un JRE DCEVM. Le fait de pointer Eclipse vers une machine virtuelle Java non modifiée a résolu ce problème.

1
Marc Magon

J'utilise STS. Après avoir effectué l’installation de lombok.jar ci-dessus, vous devez effectuer la tâche suivante. STS -> Projet -> Propriétés -> Java Compilateur -> Traitement des annotations -> Activer le traitement des annotations. Voir ici

0
Maitree Shah