Dúvida no Ex. 2 da Aula 1 - A linguagem Java | Java I: Primeiros passos | Solucionado
Dúvida no Ex. 2 da Aula 1 - A linguagem Java
Referente ao curso Java I: Primeiros passos, no capítulo A linguagem Java e atividade Exercício 2
MARCO ANTÔNIO CALIXTO
(12.8k xp, 15 posts)
Boa Noite Pessoal! Eu fiz todas as configurações sugeridas, consegui gerar o a classe mas não rodou quando chamei. O que faço? Alguém tem alguma sugestão? O Java e Javac estão com a mesma versão. Abraço
Olá Marco! O Seu problema é compilar? Ou so em rodar a aplicacao?
(20.9k xp, 3 posts)
Olá Marco, você chegou a dar um CD no CMD?
Olá Romário, é só rodar.
Hum.. Como você está fazendo para rodar a aplicação?
Olá Rafael, como seria isso? Não coloquei CD não!
Você precisa abrir o prompt de comando, e fazer apontar para o diretório de onde está armazenado o seu arquivo .java.
Por exemplo, o aquivo .java está em d:\exercicios\xpto.java. quando abrir o prompt de comando tem que indicar o diretório:
c:\Users\Usuario> cd d:\exercicios\ d:\exercicios> javac xpto.java d:\exercicios>java xpto
CD é um comando do prompt que serve para você mudar o diretório onde você esta.
Exemplo: Quando você abre o prompt de comando ele ja vem algo parecido com isso:
E o cursor piscando, isso significa que você está dentro deste diretorio utilizando o Prompt. Então você pode usar o comando CD para ir para qualquer outro diretório. Assim: cd romario
Dai ele iria abrir minha pasta romario que fica dentro do C:\ então o cursor iria mostrar agora da seguinte forma:
C:\romario>
Mas creio que se você conseguiu compilar com o javac não é necessário utilizar cd, pois o arquivo .java deve estar na mesma pasta onde você utilizou o javac. A menos que você mudou o arquivo de lugar.
Estou digitando no CMD: java MeuProgramaModificado e dá a informação que não foi possivel localizar nem carregar a classe principal MeuProgramaModificado.
Ponha o código da classe que você desenvolveu aqui, so pra eu dar uma olhada
Romário, eu consegui rodar com o javac, tanto que gerou um arquivo .class
Certo, mas ponha seu código aqui só para eu dar uma olhada.
Romário o codigo é esse:
class MeuProgramaModificado{
System.out.println("Estou na luta! \n Segundalinha");
Salvei como MeuProgramaModificado.java Quando coloquei para compilar no javac coloquei a seguinte informação:
javac C:\Alura\MeuProgramaModificado.java
e foi gerado um MeuProgramaModificado.class na minha pasta.
Daí pra frente não consigo rodar o meu .class
Hum.. Então, veja só. O prompt funciona de acordo com a pasta onde ele se encontra. Perceba que você não está, com o prompt, na pasta onde estão seus arquivos.
Como eu disse anteriormente, quando eu abro o meu prompt, por exemplo, ele abre com o cursor no seguinte diretório:
O que significa que para eu compilar e rodar meus arquivos eu tenho que por eles dentro de diretório C:\ . Ou outras duas opções seriam sai com o meu prompt do diretório C:\ e ir para o diretório onde encontra os arquivos, utilizando o comando CD como o Raphael falou.
Exemplo: Meus arquivos estão na pasta: C:\Alura\Java
Então com o meu prompt eu tenho que utilizar o comando CD e abrir essa pastas com ele. da seguinte forma:
cd Alura\Java
Dai o meu prompt de comando iria para a pasta C:\Alura\Java e lá eu poderia executar os comandos javac e java sem nenhum problema pois meus arquivos estariam na mesma pasta onde esta meu prompt.
A outra opção seria fazer como você fez. Você na hora de compilar por seu prompt estar dentro de outra pasta, você executou o comando javac informando o caminho onde se encontrava o seu arquivo.
Veja que para compilar você fez:
Você informou o caminho onde estava seu arquivo. E ele gerou o arquivo .class
Então para você executar você tem que fazer o mesmo, informar o caminho onde se encontra a sua classe. Fazendo o seguinte:
java C:\Alura\MeuProgramaModificado
Lembre-se! O prompt so irá executar ações para determinado arquivo quando ele souber onde esse arquivo se encontra. Caso você não diga onde o arquivo está, ele irá presumir que está na pasta onde ele se encontra aberto e se ele não encontrar o arquivo ele não executará o comando.
Por isso quando você usava o comando java ele iria procurar o arquivo dentro da pasta que ele abriu e não encontrava, então ele dizia que não encontrava a classe.
Dessa forma ha duas opções: Abrir a pasta com o prompt ou informar onde está o arquivo na hora da execução do comando.
Romário, Tentei usar o cd, infelizmente não funcionou, então resolvi continuar mostrando o caminho. Para o javac deu tudo certo, mas quando chamo o java, não roda, vem a mesma mensagem de que não é possível localizar nem carregar a classe principal.
Obrigado!!! Finalmente funcionou! Usei o CD.
Que bom! Qualquer dúvida só perguntar. Bons Estudos!
Acretido que vc salvou seu programa com nome diferente da classe. Tentou salvar como mesmo nome da classe e compilar e executar novamente?
Erickson Takano
(11.3k xp, 12 posts)
Nao funciona o cd comigo e continuo com o mesmo problema. como nao consigo o cd, uso o caminho todo: "java c:\Java\OlaJava" . Apesar disso, nao funciona... apenas o "javac c:\Java\OlaJava.java". O que mais pode ser?