Solucionado (ver solução)
Solucionado
(ver solução)
6
respostas

[Dúvida] Não estou conseguindo instalar o lombok para uso no eclipse

Pesquisei bastante no forum, mas não consegui sanar minha dúvida, ela é a seguinte:

Não estou conseguindo fazer a requisição pelo Insomnia, está dando erro 500 com a seguinte saída:

"org.springframework.orm.jpa.JpaSystemException: Unable to locate constructor for embeddable : med.voll.api.endereco.Endereco\n\tat

Percebi que a minha dúvida foi a mesma de alguns estudantes, o erro está acontecendo porque para o lombok funcionar no eclipse, é preciso instalá-lo no mesmo. Mas aí é que está o problema não estou conseguindo fazer a instalação, já assisti e li vários tutoriais e não estou conseguindo fazer a instalação, já tentei os seguintes passos após fazer o download do lombok: (Meu sistema operacional é o Ubuntu 22.04.2 LTS)

1 - Dar 2 cliques no arquivo para abrir, mas não consigo executar o programa, ele abre o lombok.jar e mostra os diretorios dentro; 2 - Clicar com o botão direito do mouse ir em propriedades -> Permissões -> abilitar o Permitir execução de arquivo como programa, mas não surte efeito nenhum; 3 - Via terminal, naveguei até o diretório onde está o lombok.jar e executei java -jar lombok.jar, mas dá o sequinte erro:

Exception in thread "main" java.lang.UnsatisfiedLinkError: Can't load library: /usr/lib/jvm/java-17-openjdk-amd64/lib/libawt_xawt.so
    at java.base/java.lang.ClassLoader.loadLibrary(ClassLoader.java:2393)
    at java.base/java.lang.Runtime.load0(Runtime.java:755)
    at java.base/java.lang.System.load(System.java:1953)
    at java.base/jdk.internal.loader.NativeLibraries.load(Native Method)
    at java.base/jdk.internal.loader.NativeLibraries$NativeLibraryImpl.open(NativeLibraries.java:388)
    at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:232)
    at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:174)
    at java.base/jdk.internal.loader.NativeLibraries.findFromPaths(NativeLibraries.java:315)
    at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:285)
    at java.base/java.lang.ClassLoader.loadLibrary(ClassLoader.java:2398)
    at java.base/java.lang.Runtime.loadLibrary0(Runtime.java:818)
    at java.base/java.lang.System.loadLibrary(System.java:1989)
    at java.desktop/java.awt.Toolkit$2.run(Toolkit.java:1392)
    at java.desktop/java.awt.Toolkit$2.run(Toolkit.java:1390)
    at java.base/java.security.AccessController.doPrivileged(AccessController.java:318)
    at java.desktop/java.awt.Toolkit.loadLibraries(Toolkit.java:1389)
    at java.desktop/java.awt.Toolkit.initStatic(Toolkit.java:1427)
    at java.desktop/java.awt.Toolkit.<clinit>(Toolkit.java:1401)
    at java.desktop/java.awt.EventQueue.invokeLater(EventQueue.java:1314)
    at java.desktop/javax.swing.SwingUtilities.invokeLater(SwingUtilities.java:1421)
    at lombok.installer.Installer.guiInstaller(Installer.java:163)
    at lombok.installer.Installer.access$0(Installer.java:156)
    at lombok.installer.Installer$GraphicalInstallerApp.runApp(Installer.java:122)
    at lombok.core.Main.go(Main.java:130)
    at lombok.core.Main.main(Main.java:43)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:568)
    at lombok.launch.Main.main(Main.java:46)

4 - Via terminal, naveguei até o diretorio do arquivo e executei o seguinte comando sudo chmod =x lombok.jar, e depois fui até o arquivo para executar, porém ele dá o sequinte erro pelo gerenciador de arquivos: Não foi possível abrir o arquivo "nome do arquivo" Erro ao abrir o arquivo "caminho do arquivo": Permissão negada. Mas ainda tento executar o arquivo por outro programa que não seja o gerenciador de arquivos, mas quando procuro pelo OpenJDK não acho.

Alguém consegue me ajudar com esse problema? please ^^

6 respostas

Olá Marcelo, tudo bem?

Pelo que entendi, você está enfrentando dificuldades para instalar o Lombok no Eclipse e, por causa disso, está tendo problemas ao fazer requisições pelo Insomnia, certo?

Bom, para instalar o Lombok no Eclipse, você pode seguir os seguintes passos:

  1. Faça o download do Lombok em https://projectlombok.org/download
  2. Feche o Eclipse, caso ele esteja aberto.
  3. Execute o arquivo .jar que você baixou do Lombok. Para isso, abra o terminal, navegue até o diretório onde o arquivo está salvo e execute o comando java -jar lombok.jar.
  4. Na janela que aparecer, clique em "Specify Location..." e selecione o diretório onde o Eclipse está instalado. Em seguida, clique em "Install/Update".
  5. Na próxima janela, selecione a versão do Eclipse que você está usando e clique em "Install".
  6. Se tudo ocorrer bem, uma mensagem de sucesso deverá aparecer. Clique em "Quit Installer" e abra o Eclipse novamente.

Com relação ao erro que você está tendo ao executar o Insomnia, ele parece estar relacionado a um problema com a classe Endereco. Infelizmente, sem mais informações sobre o seu código, fica difícil dar uma resposta mais precisa. Mas sugiro que você verifique se a classe Endereco possui um construtor sem argumentos, já que esse é um requisito para que ela possa ser usada como uma classe Embeddable no JPA.

Espero ter ajudado e bons estudos!

Matheus obrigado, mas infelizmente não ajudou. Já tentei fazer esse passo a passo, não tive exito, inclusive na minha tentativa de número 3, logo acima, quando tento executar o comando java -jar lombok.jar o seguinte erro aparece no meu terminal: Exception in thread "main" java.lang.UnsatisfiedLinkError: Can't load library: /usr/lib/jvm/java-17-openjdk-amd64/lib/libawt_xawt.so at java.base/java.lang.ClassLoader.loadLibrary(ClassLoader.java:2393) at java.base/java.lang.Runtime.load0(Runtime.java:755) at java.base/java.lang.System.load(System.java:1953) at java.base/jdk.internal.loader.NativeLibraries.load(Native Method) at java.base/jdk.internal.loader.NativeLibraries$NativeLibraryImpl.open(NativeLibraries.java:388) at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:232) at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:174) at java.base/jdk.internal.loader.NativeLibraries.findFromPaths(NativeLibraries.java:315) at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:285) at java.base/java.lang.ClassLoader.loadLibrary(ClassLoader.java:2398) at java.base/java.lang.Runtime.loadLibrary0(Runtime.java:818) at java.base/java.lang.System.loadLibrary(System.java:1989) at java.desktop/java.awt.Toolkit$2.run(Toolkit.java:1392) at java.desktop/java.awt.Toolkit$2.run(Toolkit.java:1390) at java.base/java.security.AccessController.doPrivileged(AccessController.java:318) at java.desktop/java.awt.Toolkit.loadLibraries(Toolkit.java:1389) at java.desktop/java.awt.Toolkit.initStatic(Toolkit.java:1427) at java.desktop/java.awt.Toolkit.(Toolkit.java:1401) at java.desktop/java.awt.EventQueue.invokeLater(EventQueue.java:1314) at java.desktop/javax.swing.SwingUtilities.invokeLater(SwingUtilities.java:1421) at lombok.installer.Installer.guiInstaller(Installer.java:163) at lombok.installer.Installer.access$0(Installer.java:156) at lombok.installer.Installer$GraphicalInstallerApp.runApp(Installer.java:122) at lombok.core.Main.go(Main.java:130) at lombok.core.Main.main(Main.java:43) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:568) at lombok.launch.Main.main(Main.java:46)

Marcelo, seu Java está com algum problema que pode ter ocorrido na instalação.

Tenta esse comando no terminal para ver se resolve:

sudo apt install openjdk-17-jdk --fix-missing

Opa, Rodrigo, consegui executar o arquivo lombok.jar, com o comando que você me enviou, mas não estou conseguindo instalar no eclipse. O programa pede para escolher o diretório onde a IDE está instalada, porém quando escolho ele diz que não encontrou nenhuma IDE no diretório. Eu instalei o Eclipse via o instalador de programas padrão do ubuntu que o Ubuntu Software que usa o snap, então fui na minha pasta pessoal onde fica instalado os programas, escolhi o diretorio do eclipse e nada. Então em uma segunda tentativa entrei no diretorio raiz e fui no diretorio do snap por lá, mas fiz o mesmo procedimento, tentei adicionar o diretorio do eclipse e nada. Não sei mas como proceder, pode me ajudar?

solução!

Você vai precisar instalar manualmente então.

Feche o Eclipse, acesse o diretório dele no seu computador e copie para lá o lombok.jar:

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Abra o arquivo eclipse.ini com algum editor de texto e no final do arquivo adicione essa linha:

-javaagent:/home/rodrigo/eclipse/lombok.jar

Obs: Troque o caminho para ser equivalente no seu computador.

Após isso, basta abrir novamente o Eclipse que o Lombok estará instalado.

Eu estava com o mesmo erro, e mesmo após a instalação do Lombok, constava o mesmo tipo de erro. Após algum tempo analisando que #$#$%# eu tinha feito, só troquei de posição as duas anotações, @AllArgsConstructor @NoArgsConstructor, não sei se por algum motivo do qual não faço a minima ideia, o AllArgsConstructor precisa estar antes do NoArgsConstructor. Enfim, deu certo depois de um tempinho gasto nesse mizeravi