Boa tarde senhores.
Minha dúvida não é tão simples assim, eu estou com uma aplicação web no eclipse e fiz algumas alterações
no código fonte de alguns arquivos .java, sendo que eu salvo eles simplesmente não recompilam.
Eu já selecionei e desselecionei Project -> Build Automatically, já salvei o projeto.
Já fui em Project -> Clean…
Já fui em Server na parte inferior direita, cliquei com o botão direto em cima do servidor e cliquei clean.
Já cliquei também em publish e até agora nada.
Quando eu vou em Server -> clean… ele não conclui o processo e não da crítica nenhuma.
Verificando os diretorios, os .java estão com as datas das alterações que eu fiz, agora os .class estão com as antigas datas.
Ao debugar o projeto eu tenho a impressão de que ele está com o código anterior.
A minha estrutura de pastas está um pouco diferente, no WebContent tem:
/WEB-INF/classes <-- onde fica os diretorios e .class
/WEB-INF/src <-- onde fica os .java
/WEB-INF/web.xml
html e jsp
outras pastas (META-INF, etc…)
Eu penso que ele não está compilando o código fonte.
Alguém tem alguma explicação/sugestão/solução.
Já publiquei um post sobre esse caso antes, mas agora estou mais próximo do real problema.
Obrigado.
Deleta tudo o que é gerado e veja se ele realiza o build após executar um “clean” no projeto.
Se não executar, verifique as propriedades do seu projeto, pode ter algum erro de referência.
[quote=Lucas_Soares]Já deletei todos os .class e dei um clean, não gerou nada e
não tenho a opção de fazer o build ou build project.[/quote]
Provável que esteja com problema na configuração do seu projeto . Usas alguma ferramenta ANT ?
Veja o Java Build Path do seu projeto se tudo está configurado corretamente. Veja para qual JDK o Eclipse está apontando para executar a compilação.
Ferramenta ANT ?
Uso o eclipse indigo nu e cru.
Meu projeto tem struts tambêm, não sei se isso faz muita diferença sendo que é um projeto que estou
tentando dar manutenção, na verdade foi feito por outras pessoas, há muito tempo.
O eclipse está setado para jdk 7.
Não sei se é isso mas todos os projetos que fiz, vi e trabalhei os .java ficavam em um folder src.
E esse src com os .java era irmão do pai do WEB-INF. Ex.:
Projeto
– src (.java)
—br.com.etc (pacotes com os .java)
– WebRoot (pode variar a nomeclatura WebContent no seu caso)
—META-INF
—WEB-INF
E como para os applets você tem que por .class ao invés de .java no mesmo diretório do .jsp/.html/emfim acredito que ele não tente compilar nada do webcontent pra dentro.
Não sei se é isso ou como funciona de verdade, é so minha teoria que acabei de “inventar” com base no occorrido e o exemplo de applet.
Certo, entendo !
Nessa tarde estava fazendo um teste com o projeto, colocando o folder src como irmão do WebRoot que é o seu caso, mesmo assim ainda não está dando certo.
Meu .classpath tem uma tag assim:
Por acaso essa tag indica o destino de saída, ou seja os .class, nesse caso não tenho essa estrutura criada.
Será que o java já deveria criar esses diretórios ?
Ah que pena minha teoria foi por agua abaixo então…
Sobre a tag no .classpath ela faz isso sim e se o diretório não existir ainda a IDE cria, no eclipse quando você cria aquele javaProject comum sempre é
já em projetos web mais uma vez pode variar dependendo do tipo de projeto:
Como eu faço para habilitar aquela função Project -> Build Project
ou Project -> Build All, porém eu só tenho projetos web no meu workspace, e é normal elas ficarem assim: desabilitado ?
Aqui as duas opções estão desabilitadas tambem e tenho JavaProject e DWJavaProject no workspace.
Nunca cheguei a usar essas duas em especifico pois o Clean… logo abaixo faz o rebuild tambem.