3 dúvidas sobre variáveis de ambiente e desinstalação do Java  XML
Índice dos Fóruns » Java Básico
Autor Mensagem
TiagoTC
JavaTeenager

Membro desde: 09/02/2008 01:12:58
Mensagens: 189
Offline

Tenho 2 HDs na minha máquina, um que o Windows 7 está (C: ) e outro para guardar apenas arquivos (B: ). Como o C: está lotado, resolvi migrar o JDK (que estava inicialmente em "C:\Program Files\Java\jdk" para "B:\Program Files\Java\jdk". Eu poderia (acho eu) ter feito isso simplesmente movendo a pasta jdk do HD C: para o HD B: e, depois, renomear a JAVA_HOME. Porém, resolvi desinstalar manualmente a versão que tinha pois a minha era a 1.6.20 e a mais nova, do site da Sun, era a 1.6.21.

Como não achei nenhum "uninstall" na pasta do JDK original, fiz isso pelo painel de controle do próprio Windows 7 (procurei a instalação do Java e coloquei para remover). Verifiquei que a pasta "C:\Program Files\Java\jdk" havia sido removida com sucesso.

Após a "remoção", abri um console e digitei "javac", para ver se ele achava o comando. Não achou, como esperado. Porém, ao digitar "java", a seguinte mensagem apareceu:

Error: Could not open 'C: Program Files\java\jre6\lib\i386\jvm.cfg'


Claramente, algo não estava totalmente "desinstalado" da versão anterior. Deletei então todas as variáveis de ambiente relativas ao Java (no meu caso, apenas JAVA_HOME). Deletei também o ";%JAVA_HOME%\bin" que estava na variável PATH). Abri novamente o console e a mesma coisa aconteceu. Achei então o seguinte tópico: http://stackoverflow.com/questions/1059954/how-to-completely-remove-java-error-could-not-open-c-program-files-java-jre6

Nele, vi que 3 arquivos relativos ao Java ainda estavam na pasta System32, o "java.exe" e outros 2 que não conheço ("javaw.exe" e "javaws.exe"). Após deletar os 3 manualmente e testar novamente no console, FINALMENTE o erro acima deixou de existir e o comando simplesmente não era encontrado (como era esperado).

Vamos as 3 perguntas:

1) Pq na desinstalação do Java esses 3 arquivos não são deletados?

2) Eu achava que o Java apenas instalava coisas na própria pasta do JDK, mas, conforme pude ver, ele instala coisas no System32 também. Esse é mesmo o comportamento esperado do instalador? Eu lembro de ter visto em algum lugar que, durante a instalação do JDK, TODOS os arquivos são colocados APENAS dentro do diretório JDK escolhido.

3) O que são e para que servem aqueles arquivos "javaw.exe" e "javaws.exe"?


Muito obrigado desde já!

Pérola: "Nunca coloque seu celular em um forno de microondas, pois isso faz com que a bateria exploda" - Manuais de telefones celulares
marcelo.bellissimo
Virtual Machine Man

Membro desde: 17/10/2006 14:17:21
Mensagens: 617
Offline

Quanto á pergunta 3, o javaw é como o comando 'java', ele executa a sua aplicação em java, porém ele não dispara um console/prompt de fundo... ele é indicado pra aplicativos gráficos, ou qualquer um que não precise imprimir texto no console...

O javaws é o JavaWebStart... "googleie" sobre ele, é melhor do que eu tentar te explicar aqui...

Quanto ao resto das perguntas, realmente não sei... mas fiquei curioso, se alguém souber o porque disso, fale pra nós...
 
Índice dos Fóruns » Java Básico
Ir para:   
Powered by JForum 2.1.8 © JForum Team