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

javac' não é reconhecido

Ao inserir o comando javac -version, aparece o seguinte informe: 'javac' não é reconhecido como um comando interno ou externo, um programa operável ou um arquivo em lotes.

Vi outros fóruns, o jdk-8u144-windows-x64 está instalado; mas a seguinte informação diverge da passada no curso.

22 respostas

Oi Luka, você seguiu os passos para adicionar a pasta que tem o comando javac no path do seu windows? Ele precisa ser alterado para que o comando seja reconhecido no terminal.

Sim..

Oi Luca

retorne o resultado do comando

echo %path%

e o caminho completo da pasta aonde esta instalado o seu jdk, por exemplo

C:\Program Files\Java\jdk1.7.0_71\bin

Luka, tem que configurar as variaveis de ambiente do java, pra que ele funcione, tenta esse comando no cmd, execute ele como administrador. Nao esqueca de trocar o caminho da jdk que esta usando.

set path=C:\Program Files\Java\jdk1.6.0_23\bin

Caros, estou com o mesmo problema. Reparei que no tutorial recomenda-se o caminho C:\Program Files\Java\jdk1.7.0_03, entretanto depois de instar a JDK as pastas que tenho são: jdk1.8.0_121, jdk1.8.0_144 e jre1.8.0_144. Fiz algo de errado ou mudo para alguma delas?

Abs, Guto

solução!

Fala guto, beleza meu camarada?

Então, lhe aconselho a ver a aula três do curso Curso Windows: Introdução ao Prompt. Nela o instrutor faz o passo a passo. Assistindo-a , tirei dúvidas além desta do fórum.

Em relação às pastas criadas com a instalação do JDK, no meu sistema foi da seguinte forma: C:\Program Files\Java e tendo duas subpastas: jdk1.8.0_141 e jre1.8.0_141. Manuseei a primeira subpasta.

Um grande abraço camarada!

Obrigado, Luka! Acho que consegui aqui. Um abraço, Guto

Oi!

Só para esclarecer para não ficar somente no chute.

Quando você instala uma JDK, na verdade você está instalando duas coisas: A JDK propriamente dita e a JRE.

Para nós que somos desenvolvedores, precisamos da JDK que contém as bibliotecas, o compilador e outras ferramentas do Java. Só que não adianta termos a JDK sem a JRE! Precisamos executar nossos códigos. Por isso ele vem com os dois obrigatoriamente.

A JRE é a runtime do Java, o que nossos programas e servidores de aplicação irão usar para executar nossos binários. Os nossos clientes não terão uma JDK instalada no computador deles, basta a JRE que tem um instalador separado só com ele para esses casos.

Por isso as duas pastas:

  • jdk1.8.0_xxx: Essa é a pasta que contém a JDK, as bibliotecas e ferramentas que eu disse.
  • jre1.8.0_xxx: Essa é a pasta que contém a JRE para executar nossos sistemas.

Esse xxx que eu coloquei diz respeito à qual versão com correções você fez o download. Toda vez que a Oracle corrigir um bug ou aplicar algum patch, esse número irá mudar. Então, daqui a algum tempo, se você fizer o download do Java novamente, pode ser que esse número tenha mudado.

Quando vocês executam o comando javac vocês estão dizendo para o prompt executar o programa (compilador) que está na pasta jdk1.8.0_xxx/bin/javac

Quando vocês executam o comando java vocês estão dizendo para o prompt executar o programa que está na pasta jdk1.8.0_xxx/bin/java

SEMPRE que forem programar, ao configurar a variável de ambiente do Windows, apontem para a JDK, nunca para a JRE. A JRE não tem o programa javac (compilador).

Espero ter ajudado.

OBS: Por favor, marquem uma resposta solucionadora para o caso para ajudar outros que tiverem a mesma dúvida!

No Windows 10, quando você abre a janela de variáveis de ambiente ele mostra 2 campos, o de cima para variáveis DO USUÁRIO e o de baixo para variáveis DE SISTEMA. As variáveis do Java devem ser inseridas no campo de baixo, em VARIÁVEIS DE SISTEMA. Se você as inserir no campo de cima, vai acontecer exatamente o que Luka mencionou: o comando java -version funciona, porém o javac -version não. Talvez este tenha sido o erro.

Tive este problema somente no W7, no W10 funcionou de acordo com o passo a passo da aula.

Para resolver do W7 rodei o comando set path=C:\Program Files\Java\jdk1.6.0_23\bin que o nosso amigo deixou ali em cima.

Estou com mesmo problema que a grande maioria .. meu javac -version da mensagem de erro

'javac' não é reconhecido como um comando interno ou externo, um programa operável ou um arquivo em lotes.

ja tentei varias coisas e nada ainda!

Bruno,

Qual é a versão do seu Windows? Você seguiu os passos corretamente do curso?

Olá, Não estava conseguindo executar o javac -version, a mesma mensagem de erro ocorreu comigo, então decidi testar o comando: set path=C:\Program Files\Java\jdk1.8.0_144\bin que descreveram nos comentários acima, funcionou, porem, agora eu sempre tenho que digitar ele primeiro se não não funciona.

Alguém por acaso encontrou uma solução definitiva?

Tenta colocar um /M no final do comando, para ficar permanente!

C:\Program Files\Java\jdk-9

Nao consigo, to com uma maquina virtual no vmware player... coloco o caminho C:\Program Files\Java\jdk-9 e o comando javac da erro

Retorno do comando echo

C:\ProgramData\Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\Sy stem32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;JAVA_HOME\bin.

Rodando W10 aqui e só funcionou com o comando que deixaram aí em cima!

set path=C:\Program Files\Java\jdk1.6.0_23\bin

Boa Noite Pessoal. Eu consegui resolver este problema no windows 10 fazendo o seguinte: Quando vou editar a variável Path aparece uma janela com várias linhas de endereço. Nessa janela tem uma opção do lado direito onde está escrito editar texto, no meu caso foi só copiar o ";%JAVA_HOME%\bin" no fim deste código. Espero ter ajudado.

Só um adendo, tenho que iniciar o cmd como administrador para que o javac seja reconhecido.

O que resolveu pra mim foi instalar na unidade C . Eu tinha instalado na D: e não tinha dado certo. Mudei e deu certo, nao sei pq kk

O meu resolveu trocando o "%JAVA_HOME%\bin" por "C:\Program Files\Java\jdk-9.0.1\bin" que é o endereço da pasta

O meu resolveu colocando o "%JAVA_HOME%\bin" nas variaveis de ambiente do meu usuario