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

Erro na execução do código no CMD

Boa tarde, Estou com um erro após tentar abrir o arquivo compilado com o Java, alguem pode me ajudar? Segue o codigo que de erro que aparece no CMD.

C:\ProgramacaoTeste>type Programa.java
public class Programa {

    public static void main(String[] args) {
        System.out.println("ola mundo");
    }
}
C:\ProgramacaoTeste>javac Programa.java

C:\ProgramacaoTeste>
C:\ProgramacaoTeste>java Programa
Error: A JNI error has occurred, please check your installation and try again
Exception in thread "main" java.lang.UnsupportedClassVersionError: Programa 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 52.0
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(Unknown Source)
        at java.security.SecureClassLoader.defineClass(Unknown Source)
        at java.net.URLClassLoader.defineClass(Unknown Source)
        at java.net.URLClassLoader.access$100(Unknown Source)
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.launcher.LauncherHelper.checkAndLoadMain(Unknown Source)
5 respostas

Oie Eduardo, tudo bem contigo?

Esse problema acontece por conta de um conflito entre as versões do Java, onde ele foi compilado em uma versão mais nova comparado a versão da máquina virtual. Para arrumarmos isso devemos mexer na variáveis de ambiente, mas antes preciso que você me responda umas perguntas, primeiro:

  • Qual a versão do Java que você instalou na máquina?
  • Você já tinha o Java instalado antes?
  • Você já tinha o java configurado nas variáveis de ambiente antes?

Algo que já dá para você fazer é aumentar a prioridade da variável que tem o endereço da pasta bin da jdk, pois as vezes você possui algum outra aplicação que possui o java, e pode acabar acontecendo conflito, por isso faça o seguinte:

Vá nas "variáveis de ambiente" -> selecione a variável "Path" -> clique em "Editar" -> selecione a variável onde está o endereço da jdk -> vá clicando no botão "Mover para cima" até ele ficar nas primeiras posições.

Foto mostrando todo o processo de aumentar a prioridade de uma variáve, dentro de Path nas variáveis de ambientel

Após fazer isso, veja se funciona, se não, aguardo as respostas das minhas perguntas.

Fico no aguardo :)

Fiz sua instrução mas não funcionou,

Semana passada instalei o netbeans e acho que instalei o jpk tambem. A versão é essa:

C:\ProgramacaoTeste>java -version
java version "1.8.0_301"
Java(TM) SE Runtime Environment (build 1.8.0_301-b09)
Java HotSpot(TM) 64-Bit Server VM (build 25.301-b09, mixed mode)

C:\ProgramacaoTeste>javac -version
javac 16.0.2

C:\ProgramacaoTeste>

Consegue mandar foto de como está suas variáveis de ambiente?

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

solução!

Reiniciei o computador, depois de ter mudado a prioridades das variaveis do sistema no Path conforme você informou. Agora esta executando normalmente. Obrigado @Igor Chagas!