Aê, pessoal.
To com uma dúvida que tá me deixando cabreiro.
Tenho um projeto (ModVendas) onde tem um handler (CadCteHandler) que chama uma classe (Teste) de outro projeto (Cte).
CadCteHandler
public class CadCteHandler {
//Códigos...
//<editor-fold defaultstate="collapsed" desc="private void emitir()">
private void emitir() {
if (validaStatusServico()) {
if (geraXml()) {
JOptionPane.showMessageDialog(view, "OK!");
}
}
}
//</editor-fold>
private boolean validaStatusServico() {
Teste teste = new Teste();
if (teste.ConsultaServico() != null) {
String str = teste.ConsultaServico();
//cods
return true;
} else {
return false;
}
}
}
Utilizo o NetBeans 7.0.1, e o projeto Cte já está adicionado no ModVendas onde tem esse handler.
Já fiz de tudo… Compilei o projeto Cte e adicionei o jar no ModVendas… já adicionei o projeto como dito acima… Compilei tudo, enfim…
Teoricamente todos as dependências de projetos estão ok.
O erro é aquele bobinho:
Exception in thread "AWT-EventQueue-0" java.lang.NoClassDefFoundError: cte/teste/Teste
at gui.gestaovendas.handler.CadCteHandler.validaStatusServico(CadCteHandler.java:3289)
at gui.gestaovendas.handler.CadCteHandler.emitir(CadCteHandler.java:3278)
at gui.gestaovendas.handler.CadCteHandler.access$5800(CadCteHandler.java:118)
at gui.gestaovendas.handler.CadCteHandler$66.actionPerformed(CadCteHandler.java:864)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2018)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2341)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
Bobinho, mas que tá me tirando o sono. haha
Se alguém poder me ajudar ficaria grato.
Disponibilizo mais códigos se precisarem.
[]s
Deve ser apenas um esquema na importação, pois não está achando a classe, reveja os caminho se estão corretos
Entendi.
Bom, acabei de tirar todas as importações do projeto Vendas, desde jar até outros projetos, e continua na mesma.
Poderia ser algum bug da IDE?
Eu to esquecendo de configurar algo no início da criação do projeto Cte pra que o Vendas possa achá-lo?
Essas são as possibilidades que eu consigo pensar.
valeu.
verifica se no jar que vc gerou contem a classe e seus respectivos metodos… as vezes voce esta utilizando um jar antigo
Então…
eu compilo o Cte, ele gera o jar.
Tiro todos os vestígios de jar antigo do Vendas, acrescento o jar novo e compilo o vendas também.
E nada feito.
Até entendo que poderia ser erro meu quanto à questão de importação de jar, mas mesmo importando o projeto Cte em si (não o jar) para o Vendas, ele continua dando DefFoundError.
Por isso questionei sobre um possível erro na IDE.
valeu.
bom… acho muito dificil ser a IDE o problema… mais vc pode testar no eclipse ou no IntelliJ e ver se acontece a mesma coisa… mais ai vc vai perder um tempo bom…
voce por acaso usa alguma ferramenta de automação de projetos??
Oi, bom dia!
O problema é em tempo de execução, já que na compilação ele está encontrando (senão não compilaria).
Seu classpath deve estar desconfigurado, o projeto ModVendas deve ter acesso ao JAR do projeto CTE (que contém a classe Teste.class).
Dê uma olhada neste artigo:
http://www.guj.com.br/articles/108
Abraço,
[quote=rodrigo.ferreira]Oi, bom dia!
O problema é em tempo de execução, já que na compilação ele está encontrando (senão não compilaria).
Seu classpath deve estar desconfigurado, o projeto ModVendas deve ter acesso ao JAR do projeto CTE (que contém a classe Teste.class).
Dê uma olhada neste artigo:
http://www.guj.com.br/articles/108
Abraço,[/quote]
Obrigado, aprendi coisas que não sabia sobre algo tão cotidiano mas que poucos se importam.
Porém a configuração do classpath tá correto, tanto que eu instalei o JDK usando o mesmo tutorial que ele cita no artigo.
[quote=darklordkamui]bom… acho muito dificil ser a IDE o problema… mais vc pode testar no eclipse ou no IntelliJ e ver se acontece a mesma coisa… mais ai vc vai perder um tempo bom…
voce por acaso usa alguma ferramenta de automação de projetos??[/quote]
É, seria muita trabalheira. Caso nada dê certo eu tento isso.
Você pergunta sobre ferramentas de teste, como as do Junit?
abraço.
na verdade eu quis dizer o maven, ant e afins… se vc usar algum desses voce teria que olha as dependencias e ver se tao anotadas certas…
Ah, tá.
Sim, aqui eu uso o Ant.
Mas olhando o build.xml, está certo.
…
Enquanto escrevia essa mensagem deu um insight de adicionar os projetos novamente na IDE.
Vou tentar explicar:
Eu tenho um projeto principal, que importa o ModVendas, que consquentemente chama o Cte.
Acho que o jar do Cte compilado estava desatualizado nesse projeto principal.
Então eu mexia no ModVendas e não funcionava.
Adicionei tudo novamente e funcionou.
Falta de atenção minha mesmo.
Agradeço a ajuda, pessoal.
Valeu mesmo.
Abraço.
foi o que falei no começo… para vc ter aberto o .jar e verificar o conteudo hehehehehe
mais isso ai força!
[quote=darklordkamui]foi o que falei no começo… para vc ter aberto o .jar e verificar o conteudo hehehehehe
mais isso ai força![/quote]
Fiz isso, mas fiz só no ModVendas, ou seja, faltou fazer no projeto principal! haha
Eu deveria ter feito isso no projeto principal.
Mas agora tá ok.
valeu.