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

Erro ao executar jar

Olá, tudo bem?

Ao executar o bytebank1.0-exe.jar no terminal recebi a mensagem de erro abaixo, cujo acredito estar relacionada à versão do Java.

Erro: ocorreu LinkageError ao carregar a classe principal br.com.bytebank.banco.teste.TesteContas java.lang.UnsupportedClassVersionError: br/com/bytebank/banco/teste/TesteContas has been compiled by a more recent version of the Java Runtime (class file version 60.0), this version of the Java Runtime only recognizes class file versions up to 55.0

Utilizo o ubuntu 20.04 e estou um pouco confuso com relação à esses ajustes de versão do JDK, JRE, etc

Quando criei o projeto no eclipse usei no campo "Use an execution environment JRE" a opção "JAVASE-16"

Segue a saída do meu terminal do comando java -version:

`openjdk 11.0.10 2021-01-19

OpenJDK Runtime Environment (build 11.0.10+9-Ubuntu-0ubuntu1.20.04)

OpenJDK 64-Bit Server VM (build 11.0.10+9-Ubuntu-0ubuntu1.20.04, mixed mode, sharing)`

Alguem poderia me ajudar a esclarecer e ajustar essa questão de versão do JAVA na minha máquina? Obs: Já vi outros tópicos com assuntos relacionado no fórum, mas ainda assim estou confuso

7 respostas

Olá Guilherme bom dia!

Vc configurou as variaveis de ambiente?

Tenta reinstalar a jdk e jre nas mesmas versões eu uso versao 'open' da redhat

solução!

Bom dia pessoal,

Reparei que ao criar o Projeto Java, o elipse me sugere usar no campo "Use an execution environment JRE" a opção "JAVASE-16", porque a versão 16 é a mais nova estável. Porém, através do apt-get no ubuntu 20.04, a versão do JDK que ele instala é a 11.

Sendo assim, fui nas configurações do projeto e alterei a opção "Use an execution environment JRE" para JAVASE-11 e logo após gerei o jar. Agora funcionou perfeitamente.

Olá quando tentei executar o .jar do teste contas apresentou este erro e não entendi como corrigir.

Insira aqui a descrição dessa imagem para ajudar na acessibilidade poderiam me ajudar? Obrigado

Opa, boa tarde.

gu.fiaschi, esse erro é parecido com o que eu tive. Verifique a versão do Java que está instalado na sua máquina e também a versão do Java que está nas configurações do seu projeto no Eclipse.

Parece que a versão configurada no seu projeto no Eclipse é mais recente que a versão que está instalada no seu computador.

Pode verificar a versão do java no seu computador no terminal através do comando "java --version".

Para saber a versão configurada no eclipse, basta abrir o projeto no package explorer e verificar JRE System Library(no meu aparece JavaSE-11)

versão java instalada é a seguinte: C:\Users\GustavoF>java -version java version "1.8.0_202" Java(TM) SE Runtime Environment (build 1.8.0_202-b08) Java HotSpot(TM) 64-Bit Server VM (build 25.202-b08, mixed mode)

No eclipse, aparece como JavaSE-16

Como faço para adequar as versoes? precisa desinstalar e reinstalar ou tem como fazer algum tipo de up?

Obrigadão Guilherme

Boa tarde gu.fiaschi

De fato há divergências de versão.

Perceba que a saída do comando java --version é "1.8.0_202" Isso significa que corresponde à versão 8 Java

E o seu projeto no Eclipse está configurado para a versão 16, como me mostrou através desse resultado "JAVASE-16".

Tem duas formas de resolver isso:

a primeira e mais fácil é configurando seu projeto no Eclipse para rodar com a versão 8. Para isso basta abrir o projeto no Package Explorer, clicr com o botão direito em "JRE System Library" e depois em "Properties". Na janela que abrir, no campo "Execution Environment" selecione a opção "JAVASE-1.8"

a segunda forma é atualizando ou reinstalando o JDK no seu computador. nesse site você encontra as opções de download de acordo com seu sistema operacional: https://www.oracle.com/java/technologies/downloads/. A versão mais recente do JDK é a 17

Como sugestão, eu faria primeiro o teste com a primeira opção, mudando seu projeto e depois exportando o jar, para executá-lo. Dando tudo certo, faria a segunda forma, para manter seu ambiente de desenvolvimento atualizado e continuar seus estudos mais tranquilo, porque mais pra frente vai escrever códigos que são compatíveis com versões mais novas do Java. (Mas isso é só uma sugestão). O mais importante é deixar o eclipse e sua máquina "conversando" com a mesma versão para tudo funcionar.

Abraço