26
respostas

vários arquivos no path e não reconhece o %JAVA_HOME%

Help... galera jdk instalada, mas na hora de colocar o %JAVA_HOME%\bin ... tem várias linhas de arquivos e mesmo eu colocando no final não reconhece no cmd o javac -version

alguém sabe me ajudar?

C:\Python27\
C:\Python27\Scripts
C:\ProgramData\Oracle\Java\javapath;
C:\Windows\system32
C:\Windows
C:\Windows\System32\Wbem
C:\Windows\System32\WindowsPowerShell\v1.0\
C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common
%SystemRoot%\system32
%SystemRoot%
%SystemRoot%\System32\Wbem
%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\
%JAVA_HOME%\bin;
26 respostas

Oi @Thiago, passa pra gente como você declarou seu JAVA_HOME.

Já tentou reiniciar a máquina?

Olá, @Thiago.

Experimente rodar o seguinte na linha de comando:

echo %JAVA_HOME%

Assim voce vai saber se a variável ambiente está efetivamente declarada.

JAVA_HOME C:\Program Files\Java\jdk-9.0.1

e o echo %JAVA_HOME% retornou o endereço acima!

@Thiago, se tentar só o java -version retorna alguma coisa?

Se voce estiver com pressa, pode colocar diretamente no seu Path o caminho C:\Program Files\Java\jdk-9.0.1\bin

cara! não sei como explicar, mas eu reiniciei e agora nem o java -version retorna. mas antes estava retornando a versão nove!!

Pode ser conflito. Talvez voce tenha uma JRE e a JDK instaladas, ambas possuindo um binário 'java'. E quanto ao 'javac'? Experimente rodar o comando

where java

ou

where javac

Experimente também dar um

echo %PATH%

para saber se seu path foi mesmo atualizado corretamente. Pode ser um erro de digitação. Experimente também colocar o valor

%JAVA_HOME%\bin\

com o '\' após o 'bin'.

eu estou desistalando o java 9 e vou reinstalar o 8 e refazer o processo, já chamo vocês de novo kkk

eu estou adorando aprender a programar , mas a cada curso é uma briga pra poder começar a fazer alguma coisa e isso desanima!

Desanima não. Qualquer coisa, faz as coisas na força bruta só para contornar as barreiras. Por exemplo, chama o compilador do java digitando o caminho inteiro

%JAVA_HOME%\bin\javac.exe -version

Com o tempo voce vai perceber que tentar fazer tudo muito certinho só serve pra dar canseira. É importante ver o programa funcionando primeiro, depois vc vai aparando as arestas.

mesmo problema... java -version ele reconhece, mas não reconhece o javac

C:\Users\Thiag>javac -version 'javac' não é reconhecido como um comando interno ou externo, um programa operável ou um arquivo em lotes.

olhem só o where java e where javac: C:\Users\Thiag>where java C:\ProgramData\Oracle\Java\javapath\java.exe C:\Program Files\Java\jdk1.8.0_151\bin\java.exe

C:\Users\Thiag>where javac C:\Program Files\Java\jdk1.8.0_151\bin\javac.exe

com a informação acima , vocês sabem algum jeito de fazer isso funcionar?

quando eu dou o echo %path%

C:\Users\Thiag>echo %PATH%
C:\ProgramData\Oracle\Java\javapath;C:\Python27\;C:\Python27\Scripts;"C:\ProgramData\Oracle\Java\javapath;";C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;"C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\Program Files\Java\jdk1.8.0_151\BIN;";C:\Users\Thiag\AppData\Local\Microsoft\WindowsApps;C:\Users\Thiag\AppData\Local\atom\bin;"C:\Users\Thiag\AppData\Local\Microsoft\WindowsApps ;C:\Program Files\Java\jdk1.8.0_151\BIN;";

Realmente tem dois binários 'java' no seu path. Voce precisa tirar um deles.

Já o JAVA_HOME deve ser 'C:\Program Files\Java\jdk1.8.0_151\bin\' mesmo.

como eu faço isso Arthur?

Remova do PATH o 'C:\ProgramData\Oracle\Java\javapath;'

Assim voce vai ficar com o 'java' apenas da jdk.

eu removi, mas acho que removi algo a mais, e agora não está abrindo o java - version... consegue me ajudar? kkk EU sofro muito com essas coisas ...

"C:\ProgramData\Oracle\Java\javapath;";C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;"C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files\Java\jdk1.8.0_151\BIN;";C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;"C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\Program Files\Java\jdk1.8.0_151\bin\\bin";C:\Users\Thiag\AppData\Local\Microsoft\WindowsApps;C:\Users\Thiag\AppData\Local\atom\bin;"C:\Users\Thiag\AppData\Local\Microsoft\WindowsApps ;C:\Program Files\Java\jdk1.8.0_151\bin\\bin";

continua sem reconhecer os dois comandos agora java - version e javac-version

Não sei se foi a melhor solução, mas set path=C:\Program Files\Java\jdk"x.x.x_xx"\bin

agora reconhece o javac - version

Olá, Thiago, o seu a sua JAVA_HOME tem que ficar mais ou menos dessa forma dependendo da versão do jdk;

C:\Program Files\Java\jdk-9.0.1

O seu path ficará assim %JAVA_HOME%\bin

Este código %JAVA_HOME%\bin nada mais é que o caminho onde está o seu jdk C:\Program Files\Java\jdk-9.0.1 sendo que de uma forma "resumida" você pode colocar no seu path de qualquer forma que vai funcionar, espero ter ajudado.

então, eu fiz a alteração e o erro persiste, com esse comando Set path=C:\Program Files\Java\jdk1.8.0_151\bin na hora em que eu coloco ele reconhece, mas ao fechar o cmd ele deixa de reconhecer e volta a dar o mesmo erro, não sei se isso vai me atrapalhar de desenvolver com os frameworks, não sei se vai dar algum erro lá na frente

O SET PATH='...' vai salvar essa variável apenas para sessão atual do cmd.

@Thiago. Você tem que definir o JAVA_HOME e o PATH nas configurações globais de variáveis ambiente do Windows. Fica em Painel de Controle > Sistema > Configurações avançadas do sistema. Na aba "Avançado", na parte inferior da janela há o botão "Variáveis de Ambiente".

O 'PATH' fica em "Variáveis do sistema" e você pode editá-lo. MAS ATENÇÃO!!!! Não faça lá o que você fez antes: não coloque apenas o %JAVA_HOME%\bin no PATH. Acrescente-o ao final. E tome muito cuidado ao remover outras coisas.

mas está assim e não funciona, eu alterei mil vezes!! JAVA_HOME está com o caminho correto.

path está %JAVA_HOME%\bin na última linha agora, e mesmo assim não vai!!

tem alguma forma desse set path... configurar para todas as sessões?

excluí o java_home; coloquei o caminho direto no lugar de %java_home%\bin

espero que não dê problema no futuro, mas no momento está reconhecendo