55 votes

Problèmes de Lombok avec Eclipse Oxygen

J'ai récemment effectué une mise à niveau vers la nouvelle version d'Eclipse (Oxygen). J'ai téléchargé le fichier lombok.jar depuis le site web et je l'ai installé. Voici comment 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
-Dosgi.instance.area.default=@user.home/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 on le voit ici :

pojoclass outlineinfo

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

codeInfo enter image description here

Voici également 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-il comment je peux le réparer ?

1 votes

Il peut s'agir d'un problème avec le processeur d'annotation. Vérifiez s'il est activé.

0 votes

Cela ne signifie-t-il pas que l'annotation @Override ne fonctionne pas non plus ? Ce n'est pas le cas.

0 votes

Mon problème a été résolu sur mon ordinateur de bureau lorsque j'exécute eclipse en tant qu'administrateur. (bien sûr, après l'installation de Lombok).

100voto

dkb Points 2062

Mon environnement : java version " 1.8.0_144 ".

Eclipse : Eclipse Java EE IDE pour les développeurs Web. Version : Version Oxygen (4.7.0) Numéro de construction : 20170620-1800

  1. Quittez Eclipse (s'il est ouvert) et téléchargez le jar à partir 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 , installez et quittez le programme d'installation.

  4. Ajoutez le jar au chemin de construction/adjoutez-le à pom.xml.

    Par exemple, pour la construction de Gradle

    annotationProcessor("org.projectlombok:lombok") compileOnly("org.projectlombok:lombok")

  5. redémarrer l'éclipse.

  6. Allez dans Eclipse --> About Eclipse --> vérifiez que 'Lombok v1.16.18 "Dancing Elephant" est installé. https://projectlombok.org/ '

  7. Pour permettre à Lombok de participer au projet : Enable annotation processing dans l'IDE correspondant. C'est tout. Cela a fonctionné. Je n'ai pas changé eclipse init script.

Note : Lisez la note 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 y eclipse: Neon.3 Release (4.6.3) - Lombok v1.18.2

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

fyi,
Pour JDK - 10 et 11 soutien : La version de Lombok doit être au moins v1.18.4 (30 octobre 2018) ou supérieure.

1 votes

BTW, je crois que le programme d'installation modifie votre eclipse.ini, ce qui vous évite d'avoir à le faire à la main.

1 votes

Mais pourquoi cela fonctionne-t-il avec eclipse-oxygen et pas avec eclipse-photon ?

0 votes

@dkb J'ai utilisé photon et les méthodes getter et setter n'ont jamais été résolues quoi que je fasse jusqu'à ce que je réalise que l'éclipse n'avait pas lombok alors que le projet l'avait. Merci.

28voto

aribeiro Points 2962

Pour les utilisateurs de MacBook Pro (par exemple, en exécutant macOs Sierra v10.12.6), afin d'installer lombok en Eclipse Oxygen (4.7.0) ou Photon (4.8.0) En utilisant Java 1.8 (1.8.0_144), il suffit d'effectuer les actions suivantes :

  1. Télécharger lombok du site Projet Lombok ;

  2. Fermez votre IDE Eclipse s'il est ouvert ;

  3. Déclencheur lombok soit en suivant les étapes officielles de l'installation ou en exécutant la commande : java -jar lombok.jar ;

  4. Si le lombok ne trouve pas votre IDE Eclipse, il vous sera demandé d'entrer le chemin d'accès à votre Eclipse. Vous devez saisir le chemin d'accès à votre eclipse.ini dossier. 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 menu, allez à Eclipse > A propos d'Eclipse et valider que lombok est installé :

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

    Veillez à 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 construction de votre projet selon l'outil de construction que vous utilisez. 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>

2 votes

Lorsque vous regardez dans la boîte Eclipse > About Eclipse pour vérifier que Lombok est installé, veillez à faire défiler la fenêtre de texte vers le bas. Ce que vous recherchez apparaît dans le texte au-dessus de la rangée d'icônes. Veillez également à forcer une construction propre de votre projet.

0 votes

@KCBaltz vous avez tout à fait raison ! Je vais mettre à jour mon message en conséquence.

6voto

J'ai eu des problèmes avec Eclipse Oxygen, Java 1.9 y Lombok (sur Mac OSX - Windows/linux devraient être similaires).

C'est ce que je devais faire :

  1. Téléchargez la dernière version lombok: 1.16.20
  2. Ouvrez Eclipse, vérifiez les mises à jour et installez-les toutes. Assurez-vous qu'eclipse est mis à jour avec la dernière version.
  3. Sortie de l'éclipse.
  4. java -jar lombok.jar
  5. Assurez-vous que l'emplacement d'Eclipse est correct dans la fenêtre d'installation qui s'affiche, j'ai dû le 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 une seule ligne qui est mise à jour . C'est un changement par rapport à certaines des versions précédentes de lombok où un bootclasspath a également été spécifié et / ou le chemin vers lombok.jar était relative. Maintenant, c'est un chemin absolu.

Parlez d'éclipse et vous verrez Lombok en action.

Et n'oubliez pas d'utiliser le même 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 celui qui est installé dans eclipse et pour la plupart, les choses ont compilé mais il y avait quelques erreurs de compilation dans eclipse . Bien sûr, les choses se sont 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, soyez conscient d'une telle éventualité. L'essentiel est d'avoir la même version installée dans les deux versions de Lombok. eclipse et dans la gestion des dépendances de votre projet ( maven etc.).

5voto

N'utilisez pas d'anciennes versions de java.

Ce qui se passe est que lombok met la ligne suivante dans votre eclipse.ini :

-javaagent: lombok.jar

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

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

enter image description here

Remplissez le chemin "Start at" et cela fonctionnera :

enter image description here

0 votes

Sauveur de vie mon frère ! - Merci beaucoup, j'utilisais : Eclipse IDE pour les développeurs Java Version : Oxygen.1a Release (4.7.1a) Build id : 20171005-1200 OS : Windows 7, v.6.1, x86_64 / win32

5voto

keichee Points 41

J'ai eu exactement le même problème qu'Alex. Ma version d'eclipse est

Version : Oxygen.1a Release (4.7.1a) Build id : 20171005-1200

J'ai installé lombok 1.16.18 Après vérification, il était déjà installé et la ligne javaagent a été ajoutée à mon fichier eclipse.ini.

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

  1. Projet de nettoyage

  2. Projet de construction

  3. Redémarrage d'eclipse à plusieurs reprises

Rien d'autre.

0 votes

Génial J'ai dû le faire deux fois.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X