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

compiled by a more recent version of the Java Runtime (class file version 58.0), this version of the Java Runtime only recognizes class file versions up to 52.0

Dentro do Eclipse funciona, na linha do comando (windows) tem versao diferente de Java runtime. Como faço igual?

>java -jar bytebank-1.0-executavel.jar
Error: A JNI error has occurred, please check your installation and try again
Exception in thread "main" java.lang.UnsupportedClassVersionError: br/com/bytebank/banco/teste/TesteContas has been compiled by a more recent version of the Java Runtime (class file version 58.0), this version of the Java Runtime only recognizes class file versions up to 52.0
        at java.lang.ClassLoader.defineClass1(Native Method)
..... etc.
10 respostas

Verifique a versão do java, execute isso no terminal java -version e depois javac -version e mande aqui.

java -version java version "1.8.0_271" Java(TM) SE Runtime Environment (build 1.8.0_271-b09) Java HotSpot(TM) 64-Bit Server VM (build 25.271-b09, mixed mode)

javac -version javac 1.8.0_251

O que acontece se você executar sem a extensão .java

A sua versão java instalada é ''velha'' para rodar o código, tente instalar uma mais nova

Não posso apontar para a mesma versao aonde Eclipse está usando?

James, manda um print do seu build path no eclipse

"O que acontece se você executar sem a extensão .java" Não entendi - um jar. Fiz com e sem extensão.

Enfim - preciso reconciliar versao do eclipse e do windows.

>java -jar bytebank-1.0-executavel
Error: Unable to access jarfile bytebank-1.0-executavel

C:\Users\Lenovo\Desktop\LogFE_Java\15_JavaPacotes_Object>java -jar bytebank-1.0-executavel.jar
Error: A JNI error has occurred, please check your installation and try again
Exception in thread "main" j

"James, manda um print do seu build path no eclipse"

Procurando , ja vou mandar

Imagem aqui (do classpath)

https://drive.google.com/file/d/1glZl2QO8aRwQZFr0AgloOdXiMn0vXcP3/view?usp=sharing

Build Path nao tem conteudo - so tem opcoes de classpath e user libraries

Tambem Dentro do Eclipse procurei no Help-About_InstallationDetails Path=

segue referencias ao Java

Path=

...

;C:/Users/Lenovo/.p2/pool/plugins/org.eclipse.justj.openjdk.hotspot.jre.full.win32.x86_64_15.0.1.v20201027-0507/jre/bin;C:\Program Files (x86)\Common Files\Oracle\Java\javapath;C:\ProgramData\Oracle\Java\javapath; ...

C:\Program Files (x86)\Java\jre1.8.0_251\bin;

C:\Program Files (x86)\Java\jdk1.8.0_251\bin;

..

C:\Program Files\Java\jdk1.8.0_271\bin

=====

Consigo compilar/rodar programa simples na linha de comando quando é criado fora do Eclipse.

javac Teste.java

java Teste

29 39 19 69 59

solução!

Resolvido atualizando para Java 15

>java -jar bytebank-1.0-executavel.jar
CC 100.0
CP 200.0
CC 89.8
CP 210.0

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software