Erro NoClassDefFoundError

Olá Galera do PJ…!

Enfrento um erro para o qual não encontro a solução há dias. =/

A situação é a seguinte: Tenho um banco de dados objeto [Neodatis ODB] para a inserção e pesquisa dos objetos do sistema. [ Informações sobre o ODB, para quem não conhece, em: http://www.neodatis.org ].
Para testes com o banco de dados, criei duas classes, uma apenas para a inserção e outra para o teste propriamente dito.
Trecho do código:
[Classe para inserção]
(…)
ODB odb = ODBFactory.open(ODB_NAME); // Abre o arquivo .odb

    try{
       odb.store(objeto); // Inserção do objeto no banco de dados
       return 1; /* Sucesso na operação */
    }
    finally{
        if (odb != null){
            odb.close();
            return 0; /*Caso a operação não seja bem-sucedida*/
        }

(…)
[Classe para testes]
(…)
insereBD bancoDados = new insereBD("./bancoDados.odb");
(…)

A compilação é bem sucedida, mas na hora de “rodar” o programa, é retornado o seguinte erro:

Exception in thread “main” java.lang.NoClassDefFoundError: teste_insercao_bd
Java Result: 1

Estou usando o NetBeans 5.5 e Ubuntu 7.04. A JSE é a versão 6.
Já revi o código das duas classes, as bibliotecas do NeodatisODB, mas tudo parece normal.
Fazendo uma tradução brutal, o Java não encontra a definição da classe. Corrijam-me se eu estiver errado, mas, pelo q entendi, é como se o sistema compilasse um arquivo sem a classe.

O que mais posso verificar em busca da solução?

Se o programa compila, não é erro no código mesmo.
a tradução brutal é mais ou menos essa mesmo mas deve ter algo errado no seu classpath. Por exemplo quando você gera o .class a aplicação vai rodar e procura o .class em outro diretório.

outra coisa se você estiver tentando rodar o programa direto pelo console, digite apenas java teste_insercao_bd sem o .class

SdRuboW,
Obrigado pela resposta. Eu ainda não havia atentado para esse detalhe do classpath, visto que os outros códigos funcionam bem. Vou fazê-lo :wink:

Agora o interessante é que, nas tentativa de corrigir o erro, eu exclui o código da classe teste_bd deixando apenas o código de comunicação com o Banco de dados [ insereBD.java ], fazendo a instanciação e chamada de metodos de outra classe, já pronta. Resultado? O código funcionou, o objeto foi inserido no banco de dados com sucesso.
Parece implicância da JVM com a classe para testes. =/

E, falando em Classpath - eu uso o Ubuntu 7.04 - e há diversos “profiles” para colocar o classpath - qual o melhor deles? Pelo que entendi, tem de ser um arquivo q seja lido durante a inicialização do sistema ou login do usuário. Já li em outras listas de discussão sobre a inserção do classpath no arquivio “bash.rc” e outros q não lembro.