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

javac não é reconhecido

ao utilizar a função javac no promt do windowns, o cmd não reconhece o comando.

6 respostas

Olá Vinicius, você seguiu todas as instruções apresentadas no tópido apresentando Java? Se sim, só confere se ficou faltando um ;no final de cada um dos valores que foram colocados nas variáveis de ambiente, por exemplo: %SystemRoot%\system32;

Vinicius

pode ser o que o Joel explicou ou pode ser que você acabou baixando o JRE ao invés do JDK. Apenas no JDK possui o javac

Obrigado Joel! Vou verificar !

Jefferson eu baixei duas vezes a JDK para ter certeza se eu tinha confundido, e mesmo assim não havia funcionado. Mesmo seguindo as instruções da aula.

Estou sem o computador no momento, assim que tiver um posicionamento dos testes eu informo se deu certo. Obrigado!

depois passa a versão do windows também.

Mas geralmente é configuração de ambiente, é tranquilo.

Oi Vinicius um dos pré-requisitos desse curso de Java é o curso de

https://cursos.alura.com.br/course/prompt?preRequirementFrom=primeiros-passos-com-java

Nesse curso é ensinado passo a passo a instalação não só do Java como a configuração das variáveis de ambiente.

Segue um pouco do detalhamento:

Instalando nossa primeira linguagem

Agora que temos conhecimento de como manipular as variáveis de ambiente do Windows, instalar e configurar uma nova linguagem ou ferramenta é algo bem fácil! Vamos instalar o Java do zero para ver como é exemplo disso:

O primeiro passo é baixar o JDK pelo site, acesse: http://www.oracle.com/technetwork/java/

Dentro dos Top Downloads, escolha o Java SE. Na nova página clique no icone Java (Java Platform (JDK))

http://www.oracle.com/technetwork/java/javase/downloads/index.html

Agora temos que escolher o JDK adequado para a versão do nosso sistema operacional! A versão é a para Windows, claro, mas mesmo assim há duas opções: Um download para x86 e outro para 64bit. E agora?

Escolhendo o JDK para sua arquitetura do processador

Essas duas opções são relacionadas com a arquitetura do processador. Para descobrir qual é a opção correta podemos usar o nosso prompt! Abra o terminal e digite:

echo %PROCESSOR_ARCHITECTURE%

Agora deve aparecer x86 ou AMD64 (ou IA64). Tudo que tem 64 no final indica que o Windows é de 64 bits, já o x86 indica que é de 32 bits. Beleza, já sabemos a arquitetura e qual download do Java escolher!

Instalando o JDK

Escolha então o JDK (Java Development Kit) certo e, depois de ter aceitado a licença, podemos finalmente baixar o JDK. Baixe o arquivo .exe, que é algo como java-8xxx-windows-xxx.exe.

Execute o arquivo java-8xxx-windows-xxx.exe e passe pelo Wizard de instalação (pode instalar tudo, incluindo o source, não desmarque nada).

Repare que o diretório de instalação é C:\Program Files\Java\jdk1.8.0_65. Vamos lembrar disso!

O registro de sua VM (Virtual Machine) no site da Oracle é opcional.

Testando Java no prompt e configuração do PATH

Chegou o momento de ver no prompt se o Java realmente foi instalado corretamente. Vamos abrir o cmder ou o cmd e testar, digite:

java -version

Deve aparecer:

java version "1.8.0_66"
Java(TM) SE Runtime Environment (build 1.8.0_66-b18)
Java HotSpot(TM) Client VM (build 25.66-b18, mixed mode, sharing)

Funcionou? Se funcionou pode ficar feliz pois o instalador já adicionou a pasta bin do Java no PATH!. Mas vamos testar também o compilador do Java:

javac -version

Não funcionou:

'javac' is not recognized as an internal or external command,
operable program or batch file.

Hum, vamos verificar o PATH:

echo %PATH%

Não encontramos nada sobre o nosso jdk1.8.0, mas tem um caminho suspeito:

C:\ProgramData\Oracle\Java\javapath

Vamos verificar esse caminho:

dir C:\ProgramData\Oracle\Java\javapath

16/12/2015  18:46    <DIR>          .
16/12/2015  18:46    <DIR>          ..
16/12/2015  18:46    <SYMLINK>      java.exe [C:\Program Files\Java\jre1.8.0_65\bin\java.exe]
16/12/2015  18:46    <SYMLINK>      javaw.exe [C:\Program Files\Java\jre1.8.0_65\bin\javaw.exe]
16/12/2015  18:46    <SYMLINK>      javaws.exe [C:\Program Files\Java\jre1.8.0_65\bin\javaws.exe]
               3 File(s)              0 bytes
               2 Dir(s)     541.597.696 bytes free

Repare que nessa pasta não tem nada do javac. Devemos adicionar ao PATH a pasta onde se encontra o javac. Nós já sabemos a pasta de instalação do JDK:

dir  "C:\Program Files\Java\jdk1.8.0_65"
 Directory of C:\Program Files\Java\jdk1.8.0_65

16/12/2015  18:47    <DIR>          .
16/12/2015  18:47    <DIR>          ..
16/12/2015  18:45    <DIR>          bin
06/10/2015  17:46             3.244 COPYRIGHT

\\ muito mais infos ...

Obs: Usamos aspas duplas pois tem um espaço no caminho.

Logo no início encontramos a pasta bin. Agora só falta adicionar ao PATH:

setx PATH "%PATH%;C:\Program Files\Java\jdk1.8.0_65\bin" /M

Fechando e abrindo o terminal podemos testar novamente o comando:

javac -version
  javac 1.8.0_65

Problema resolvido!

Criando o JAVA_HOME

O Java já está funcionado na linha de comando, mas existem outras ferramentas do mundo Java que também querem saber onde o Java foi instalado. E essas ferramentas acreditam tanto que a gente instalou o Java que elas simplesmente assumem a existência de uma variável de ambiente com nome JAVA_HOME.

Ok, tudo bem, vamos criar essa variável usando o setx, já para a deixarmos permanente. Só devemos ter um cuidado: o JAVA_HOME aponta para o diretório raiz do Java (sem a pasta bin):

setx JAVA_HOME "C:\Program Files\Java\jdk1.8.0_65" /M

Fechando e abrindo o terminal, podemos testar a variável:

echo %JAVA_HOME%
 C:\Program Files\Java\jdk1.8.0_65

Caso persista alguma dúvida a respeito desse exercício ou curso pode perguntar aqui mesmo ou se você não tiver mais nenhuma dúvida a respeito você pode marcar uma resposta como solução, finalizando assim esse tópico.Espero ter ajudado. Bons estudos.

solução!

Oi Vinicius, caso persista alguma dúvida a respeito desse exercício ou curso pode perguntar aqui mesmo ou se você não tiver mais nenhuma dúvida a respeito você pode marcar uma resposta como solução, finalizando assim esse tópico.Espero ter ajudado. Bons estudos.