Direto no eclipse Funciona...gero o jar e da erro

4 respostas
G

Estou usando Eclipse + Hibernante + MySql + Swing

Quando executo pelo eclipse a minha classe TelaLogin, funciona que é uma blz, acessa o banco e tudo mais.

porem o mesmo projeto.

Quando gero o .jar, e executo...aparece minha TelaLogin, mais ae quando vai acessar o banco da erro.

Alguem sabe o que pode ser...?

executei via DOS e passo o seguinte erro:
Exeption in thread "AWT-EventQueue-0" java.lang.NoClassDefFoudError: org/hibernate/creterion/Criterion
    at projeto.Telas.TelaLogin$2.actionPerformed<TelaLogin.java:163>
    at javax.swing.AbstratctButton.fireActionPerformed<Unknown Source>

...
na linha 163 da classe TelaLogin tem
UsuarioDAO uDao = new UsuarioDAO(HibernateUtil.getSession());

O q acho loco q no eclipse funfa e qndo gero .jar da pau.

Obrigado Pela ajuda.

Li varias coisas. e vi q poderia se o classpath entao to postando ele...
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
	<classpathentry path="" kind="src"/>
	<classpathentry path="org.eclipse.jdt.launching.JRE_CONTAINER" kind="con"/>
	<classpathentry path="projeto.jar/log4j-1.2.14.jar" kind="lib"/>
	<classpathentry path="projeto.jar/slf4j-api-1.5.6.jar" kind="lib"/>
	<classpathentry path="projeto.jar/slf4j-api.jar" kind="lib"/>
	<classpathentry path="projeto.jar/slf4j-log4j12-1.5.6.jar" kind="lib"/>
	<classpathentry path="projeto.jar/hibernate-core.jar" kind="lib"/>
	<classpathentry path="projeto.pontoJars/ant-contrib-1.0b2.jar" kind="lib"/>
	<classpathentry path="projeto.pontoJars/ant-junit-1.6.5.jar" kind="lib"/>
	<classpathentry path="projeto.pontoJars/aspectjrt.jar" kind="lib"/>
	<classpathentry path="projeto.pontoJars/cglib-nodep-2.1_3.jar" kind="lib"/>
	<classpathentry path="projeto.pontoJars/commons-beanutils-1.7.jar" kind="lib"/>
	<classpathentry path="projeto.pontoJars/commons-collections-3.2.1.jar" kind="lib"/>
	<classpathentry path="projeto.pontoJars/commons-digester-1.7.jar" kind="lib"/>
	<classpathentry path="projeto.pontoJars/commons-fileupload-1.2.1.jar" kind="lib"/>
	<classpathentry path="projeto.pontoJars/commons-logging.jar" kind="lib"/>
	<classpathentry path="projeto.pontoJars/dom4j.jar" kind="lib"/>
	<classpathentry path="projeto.pontoJars/ejb3-persistence.jar" kind="lib"/>
	<classpathentry path="projeto.pontoJars/google-collect-1.0-rc2.jar" kind="lib"/>
	<classpathentry path="projeto.pontoJars/hibernate-annotations.jar" kind="lib"/>
	<classpathentry path="projeto.pontoJars/hibernate-commons-annotations.jar" kind="lib"/>
	<classpathentry path="projeto.pontoJars/hibernate-core.jar" kind="lib"/>
	<classpathentry path="projeto.pontoJars/hibernate-jpa-2.0-api-1.0.0.Final.jar" kind="lib"/>
	<classpathentry path="projeto.pontoJars/hibernate-validator-4.1.0.Final.jar" kind="lib"/>
	<classpathentry path="projeto.pontoJars/javassist-3.8.0.GA.jar" kind="lib"/>
	<classpathentry path="projeto.pontoJars/jsf-api.jar" kind="lib"/>
	<classpathentry path="projeto.pontoJars/jsf-impl.jar" kind="lib"/>
	<classpathentry path="projeto.pontoJars/jstl.jar" kind="lib"/>
	<classpathentry path="projeto.pontoJars/jta-1.0.1B.jar" kind="lib"/>
	<classpathentry path="projeto.pontoJars/junit-3.8.1.jar" kind="lib"/>
	<classpathentry path="projeto.pontoJars/log4j-1.2.14.jar" kind="lib"/>
	<classpathentry path="projeto.pontoJars/log4j-1.2.15.jar" kind="lib"/>
	<classpathentry path="projeto.pontoJars/mirror-1.5.1.jar" kind="lib"/>
	<classpathentry path="projeto.pontoJars/mysql-connector-java-5.0.7-bin.jar" kind="lib"/>
	<classpathentry path="projeto.pontoJars/objenesis-1.1.jar" kind="lib"/>
	<classpathentry path="projeto.pontoJars/ognl-2.7.3.jar" kind="lib"/>
	<classpathentry path="projeto.pontoJars/paranamer-1.5.jar" kind="lib"/>
	<classpathentry path="projeto.pontoJars/richfaces-api-3.3.2.SR1.jar" kind="lib"/>
	<classpathentry path="projeto.pontoJars/richfaces-impl-3.3.2.SR1.jar" kind="lib"/>
	<classpathentry path="projeto.pontoJars/richfaces-ui-3.3.2.SR1.jar" kind="lib"/>
	<classpathentry path="projeto.pontoJars/slf4j-api.jar" kind="lib"/>
	<classpathentry path="projeto.pontoJars/slf4j-api-1.5.6.jar" kind="lib"/>
	<classpathentry path="projeto.pontoJars/slf4j-log4j12-1.5.6.jar" kind="lib"/>
	<classpathentry path="projeto.pontoJars/spring-2.5.5.jar" kind="lib"/>
	<classpathentry path="projeto.pontoJars/standard.jar" kind="lib"/>
	<classpathentry path="projeto.pontoJars/standard-1.1.2.jar" kind="lib"/>
	<classpathentry path="projeto.pontoJars/swingx-beaninfo-1.6.2.jar" kind="lib"/>
	<classpathentry path="projeto.pontoJars/swingx-core-1.6.2.jar" kind="lib"/>
	<classpathentry path="projeto.pontoJars/validation-api-1.0.0.GA.jar" kind="lib"/>
	<classpathentry path="" kind="output"/>
</classpath>

4 Respostas

Andre_Brito

Abrre seu jar e verifica se foi gerado o MANIFEST.MF. Se sim, abre o MANIFEST.MF num edito de texto e ve se o Class-path tem o path do jar do Hibernate (tem que ser igualzinho). Se estiver numa pasta lib, junto com o jar (junto eu quero dizer na mesma pasta), deve estar lib/nome-do-jar.jar.

Esse erro está dando porque não consegue encontrar encontrar alguma lib do Hibernate no classpath do jar.

O que você está usando pra fazer o build do jar?

G

Cara… o projeto eh Desktop

criei uma pasta chamada pontoJar ae adicionei todos os jar, e selecionei todos e

clickei com o botao direito em cima d todos > caminho de construção > incluir caminho de construção

… mais qndo gero o .jar …ae abro ele pelo winrar… nao aparece minha pasta.

o que faço? tenho q entregar esse projeto hj :cry:

G

aaaaaaaaaaaaalguemmmmmmmm please… \o/

Marky.Vasconcelos

Nos novos Eclipses, voce tem a opção Export> Runnable Jar File, que é uma versão do FatJar embutida dentro do Eclipse, use esse wizard que ele coloca todas as dependencias dentro do Jar.

Se voce uma versão antiga do Eclipse voce pode instalar o plugin do FatJar, é só da uma procurada.

Criado 4 de novembro de 2010
Ultima resposta 4 de nov. de 2010
Respostas 4
Participantes 3