web-dev-qa-db-fra.com

Lombok ne génère ni getter ni setter

Je viens d'essayer d'envoyer un projet basé sur Maven à un autre ordinateur et de marquer HORROR, Rouge partout !!

Cependant, mvn clean install construit parfaitement.

J'ai rapidement constaté que Lombok ne générait pas de getter ni de setter pour mes classes, mais les @Getter et @Setter étaient correctement reconnus par Eclipse.

Les deux ordinateurs utilisent la même version de Maven (3.0.4) mais des JDK différents (1.6_23 et 1.6_33). Ils utilisent tous les deux Eclipse Indigo 32 bit.

47
Eildosa

Lorsque vous démarrez avec une nouvelle installation Eclipse, vous devez en fait "installer" Lombok avant de pouvoir l'utiliser.

  1. Allez où votre bocal Lombok est, lancez-le (Exemple: Java -jar lombok-1.16.10.jar) . Une fenêtre devrait apparaître, accédez à votre emplacement Eclipse.exe.

  2. Cliquez sur installer.

  3. Lancez Eclipse, mettez à jour la configuration du projet sur tous les projets et le tour est joué.

67
Eildosa
  • Si vous utilisez STS. Lombok doit être installé sur votre Eclipse en exécutant lombok-xyz.jar.

  • Veuillez essayer les étapes suivantes:

    1. Inclure pom dans Maven.
    2. Sortie/arrêt STS 
    3. Trouvez lombok Jar dans ~/.m2/repository/org/projectlombok/lombok/version.x
    4. Depuis l'invite de commande/Shell Java -jar lombok-1.x.y.jarProject Lombok Installer

    5. Démarrer STS 

C'est tout.

EDIT: Je l'ai fait et je montais toujours des erreurs, comme mentionné dans les commentaires . J'ai donc mis à jour le projet: clic droit sur le projet -> Maven -> Update Project et les erreurs ont disparu.

47
GoutamS

Notez que si vous utilisez IntelliJ, vous devrez installer le plug-in Lombok (disponible dans les paramètres IDE) et également activer le traitement des annotations. 

11
PacificSky

Si vous utilisez Eclipse. Lombok doit être installé sur votre Eclipse en exécutant le fichier lombok-xyz.jar (vous pouvez par exemple le trouver dans ~/.m2/repository/org/projectlombok/lombok/1.12.6/lombok-1.12.6.jar). 

Lorsque la fenêtre d'installation s'ouvre, vous devez choisir l'emplacement de votre Eclipse. Et laissez-le installer Lombok à l'intérieur. Vous devez ensuite redémarrer votre Eclipse.

3
sancho21

Ce sont des instructions en ligne de commande où la version graphique ci-dessus n'est pas disponible ou vous ne pouvez pas ouvrir le fichier jar de Lombok par un double clic, comme dans Ubuntu.

Au moment de la rédaction de ce document, utiliser Lombok n’est pas simple, il suffit d’ajouter une dépendance dans votre fichier xml POM et d’ajouter l’annotation. Ce sont les prochaines étapes:

1) Localisez l’emplacement où votre fichier de bocal Lombok est téléchargé par maven; Il se trouve généralement dans le dossier .m2 de votre répertoire personnel. Puis exécutez la commande suivante.

Java -jar lombok-1.16.18.jar install <path of where your IDE is installed>

exemple d'utilisation:

Java -jar lombok-x.xx.xx.jar install ~/Downloads/spring-tool-suite-3.9.1.RELEASE-e4.7.1a-linux-gtk-x86_64/sts-bundle/sts-3.9.1.RELEASE/

la commande ci-dessus effectue essentiellement une mise à jour de la configuration dans votre fichier IDE .ini ou configuration, comme ci-dessous:

-javaagent:/home/neshant/Downloads/spring-tool-suite-3.9.1.RELEASE-e4.7.1a-linux-gtk-x86_64/sts-bundle/sts-3.9.1.RELEASE/lombok.jar

cela garantit que les annotations @Data ou @Getter ou @Setter sont comprises par l'EDI. C'est bizarre que cela ait dû être si complexe.

2
neshant sharma

J'utilise le studio de développement Red Hat Jboss. J'ai résolu ce problème en:

  1. Le projet a une dépendance lombok. Examinez d’abord votre référentiel .m2.__ et recherchez le fichier jar lombok.

  2. Double-cliquez sur le fichier. Le programme d'installation vous indiquera le chemin d'accès pour IDE comme C:\Users\xxx\devstudio\studio\devstudio.exe.

  3. Redémarrez le IDE et mettez à jour le projet maven, l'erreur disparaîtra

1
kranti

1) Exécutez la commande Java -jar lombok-1.16.10.jar. Cela doit être exécuté à partir du répertoire de votre fichier lombok.jar.

2) Ajoutez l’emplacement manuellement en sélectionnant le fichier Eclipse.ini (répertoire Eclipse installé). Par “ Spécifiez l'emplacement

Remarque: N'ajoutez pas le Eclipse.exe car cela rendra l'éditeur Eclipse est corrompu.

Comment ajouter le fichier Eclipse.ini

1

Pour Sprint STS - Placez le fichier lombok.jar dans le dossier exe Eclipse/sts et ajoutez l'entrée suivante au fichier STS.ini.

-javaagent:lombok.jar
1
ManishSingh

Lorsque vous utilisez Lombok sur une nouvelle installation d’Eclipse ou de STS, vous devez:

  1. Installez le pot lombok que vous pouvez obtenir à l’adresse https://projectlombok.org/download . Exécutez le fichier jar (en tant qu'administrateur si vous utilisez Windows) et spécifiez le chemin d'accès à votre installation Eclipse/STS. 

  2. Redémarrez votre IDE (Eclipse ou STS)

  3. Donnez un peu de temps à Eclipse pour générer les fichiers de classe pour lombok (cela peut prendre jusqu'à 4 minutes dans certains cas)

1
Fua

J'ai également rencontré ce problème, dans mon cas, c'est parce que je mets à niveau mon IntelliJ IDEA sans mettre à niveau le plug-in Lombok. Donc, ils sont incompatibles.

0
Vicky

Pour Spring ToolSuite 4 sur Mac, ils ont renommé l'ini en SpringToolSuite4.ini. 

Vous pouvez renommer ou copier le fichier dans STS.ini pour le faire reconnaître par lombok. Ensuite, recopiez-le dans le nom d'origine pour que l'EDI le lise. (Je n'ai pas essayé si les liens symboliques fonctionnent bien.)

0
Chad

Si vous utilisez maven, accédez aux dépendances maven dans la structure de votre projet, puis exécutez lombok jar en tant que projet Java. Il sera installé, puis quitte et lance Eclipse.

0
akshay