Olá!
Rodei o comando java -jar , no caminho coloquei o caminho dele completo e estou tendo o seguinte log...
Olá!
Rodei o comando java -jar , no caminho coloquei o caminho dele completo e estou tendo o seguinte log...
Alguém pra me auxiliar com esse log?
Olá, João!
Pelo log que você compartilhou, o erro java.lang.UnsupportedClassVersionError
indica que a versão do Java Runtime que você está usando para executar o arquivo .jar
é mais antiga do que a versão com a qual o arquivo foi compilado.
A mensagem "class file version 61.0, this version of the Java Runtime only recognizes class file versions up to 52.0" informa que o .jar
foi compilado com o Java 17 (versão 61.0), mas você está tentando executá-lo com uma versão do Java mais antiga, provavelmente Java 8 (versão 52.0).
Para resolver esse problema, você precisa instalar o Java 17 no seu ambiente. Para verificar a versão do Java no terminal:
java -version
Espero ter ajudado e bons estudos!
Minha versão é essa Rodrigo...
Teria algum link aqui da Alura pra instalação do java? Não me recordo se tem...
No aguardo
Precisa atualizar para o Java 17
No primeiro curso de Java fala da instalação: https://cursos.alura.com.br/course/java-criando-primeira-aplicacao
Acabei de instalar e configurar a variável de ambiente no windows. Mas o IntelliJ ainda está reconhecendo somente a versão enviada acima. Como faço para desinstalar ela e instalar a 17?
Ou será que se reiniciar o notebook ele já reconhece a 17?
No aguardo...
Se você estiver rodando o comando do terminal dentro do IntelliJ, precisa reiniciar o IntelliJ para ele detectar a mudança nas variáveis de ambiente.
Eu reiniciei mas ele continua mostrando conforme o print que mandei da versão...
Ele não atualizou e não sei porque...
Veja se o Java 17 está configurado no projeto no IntelliJ.
Botão direito -> Open Module Settings (nos menus Module e Project)
Atualizei conforme indicado nos prints. A versão que baixei. E mesmo assim continuo com erro de acesso ao arquivo...
A mensagem agora é outra. Erro de acesso. Não sei porque...
Unable to acess jarfile. Coloquei o path certinho do arquivo....
Agora o erro foi no comando. Como sua pasta tem espaço em branco no nome, precisa colocar entre aspas.
java -jar "C:\Users\josh_\Desktop\Boas Praticas em Java\3149-boas-praticas-java-projeto_inicial\api.jar"
Agora coloquei as aspas e voltou a dar o mesmo problema de versionamento...não tô entendendo porque. Instalei o 17, atualizei o project e module para a versão 17 conforme mostrei no print...mas ainda está dando o mesmo erro...
Deve estar constando ainda a versão 8 no seu terminal. Você pode rodar assim então:
C:\Program Files\Java\jdk-17\bin\java -jar "C:\Users\josh_\Desktop\Boas Praticas em Java\3149-boas-praticas-java-projeto_inicial\api.jar"
Lembrando de alterar o caminho para o diretório correto de instalação do Java 17 no seu computador.
Oi Rodrigo! Agora com esse caminho do diretório especifico do java 17(copiei e colei o diretório correto que está no arquivo bin do java 17) , ele não reconhece o comando...conforme o print.
Aspas duplas porque tem espaço em branco no caminho:
"C:\Program Files\Java\jdk-17\bin\java" -jar "C:\Users\josh_\Desktop\Boas Praticas em Java\3149-boas-praticas-java-projeto_inicial\api.jar"
Se não funcionar, rode o comando de dentro da pasta bin do java:
cd "C:\Program Files\Java\jdk-17\bin"
java -jar "C:\Users\josh_\Desktop\Boas Praticas em Java\3149-boas-praticas-java-projeto_inicial\api.jar"
Entrei na pasta com o comando cd pois o caminho entre aspas duplas não estava indo...
Agora dentro da pasta bin e rodando o comando java -jar "caminho-completo-do-arquivo" está dando o mesmo erro de versão de novo...
Ah sim, esqueci desse detalhe, se digitar apenas java, ele vai pegar da variável de ambiente que está apontando para o Java 8 e nao o java da pasta bin.
Tente assim então:
java.exe -jar "C:\Users\josh_\Desktop\Boas Praticas em Java\3149-boas-praticas-java-projeto_inicial\api.jar"
Se não der certo, tente criar um alias temporário no powershell:
Set-Alias -Name java17 -Value "C:\Program Files\Java\jdk-17\bin\java.exe"
java17 -jar "C:\Users\josh_\Desktop\Boas Praticas em Java\3149-boas-praticas-java-projeto_inicial\api.jar"
Tentei sua primeira instrução e não foi. Ai criei o Alias e deu certinho! Pra rodar qualquer .jar agora em outras aplicações vou ter que criar um alias? Tenho que estar na pasta bin com o comando cd sempre? Ou será que executando fora dela roda? Só mais essa dúvida rsrsrs
Boa.
Com o alias não precisa acessar a pasta do java 17 não. Pode rodar o comando de qualquer diretório no terminal. Porém, esse alias é temporário, ou seja, quando você fechar o power shell e abrir de novo ele não vai mais existir. Dá uma pesquisada que deve ter como configurar alias definitivo no power shell do windows.
Obrigado Rodrigo pelo suporte!
Vou pesquisar.