Desculpem se a pergunta é básica demais. Tentei usar a busca do fórum, mas não sei o que usar como palavra chave para achar isso.
Tenho um projeto carregado no Eclipse. No diretório estão todos os .java, mas nenhum deles está compilado (.class).
Tenho a flag “Build Automatically” ligada no menu “Project”.
Configurei, como faço sempre, o “Run…” pra rodar o projeto e coloquei a classe inicial lá.
Mas quando executo o projeto (com “Run…” ou “Debug…”), recebo uma exceção, dizendo que a classe não foi encontrada. Olhando no diretório do projeto, vejo que ainda só estão os .java – nenhum .class lá!!!
Como eu faço o Eclipse complilar meus fontes “na marra”?
Já tentei desabilitar o “Build Automatically” e usar o “Build Project” ou “Build All” mas não funcionou (e também não deu nenhuma mensagem de erro e pela velocidade que ele executou o comando, também não deve ter feito nada – de fato, os .class ainda não estão lá).
Isso aconteceu depois que eu estava tentando modificar um dos fontes. Eu tinha comentado parte do código e rodava, mas o código comentado continuava sendo executado. Olhei no .class (usando o JAD http://kpdus.tripod.com/jad.html) e o trecho de código que deveria estar comentado não estava. Aí tentei usar “Project->Clean…” pra apagar os .class e forçar o Eclipse a gerar todas as classes novamente, mas daí comecei a ter a exceção de classe não encontrada.
Ou seja, mesmo antes de eu usar o “Clean…” minhas classes não estavam sendo geradas (apesar de eu ter ligado a flag “Build Automatically”.
Então, repetindo aqui a pergunta que coloquei no assunto da mensagem: Como faço pra “forçar” a compilação das classes no Eclipse?
Como disse na minha mensagem, não sei o que usar como palavra chave para fazer uma busca sobre esse tópico. Eu tentei várias vezes com diversas palavras-chave diferentes, mas não achei nada que respondesse minha dúvida.
Voce poderia me sugerir algo para tentar na busca?
Usei a famosa solução “Windows” para resolver problemas
Apaguei todo o projeto, fechei o Eclipse, abri o Eclipse de novo, re-criei o projeto e re-importei todos os arquivos.
Agora funciona!
Talvez fosse algum problema de “timestamp” dos arquivos:
Como eu apaguei os .class, o Eclipse deveria gerá-los novamente, mas acho que ele deve guardar internamente a informação de timestamp dos arquivos, e ele devia estar “acreditando” que os .class eram mais novos que os .java (portanto não precisavam ser re-compilados), daí não funcionou. Se bem que eu modificava os .java e salvava novamente… Sei lá, isso é só um “chute”