2013-10-08 102 views
1

我知道它一定很简单,但我花了大约2个小时在四处搜索,直到现在我还没有找到任何我能理解的解决方案。代码在eclipse中工作,但不在命令行中

那么,我可以使用我的程序没有任何问题从Eclipse控制台,但是当我尝试从Windows命令行运行它时,我从Hibernate类中得到错误。

当从Eclipse中运行,我得到这个:

Maven + Hibernate + MySQL 
Out 08, 2013 2:13:56 AM org.hibernate.annotations.common.Version <clinit> 
INFO: HCANN000001: Hibernate Commons Annotations {4.0.1.Final} 
Out 08, 2013 2:13:56 AM org.hibernate.Version logVersion 
INFO: HHH000412: Hibernate Core {4.2.0.Final} 
Out 08, 2013 2:13:56 AM org.hibernate.cfg.Environment <clinit> 
INFO: HHH000206: hibernate.properties not found 
Out 08, 2013 2:13:56 AM org.hibernate.cfg.Environment buildBytecodeProvider 
INFO: HHH000021: Bytecode provider name : javassist 
Out 08, 2013 2:13:56 AM org.hibernate.cfg.Configuration configure 
INFO: HHH000043: Configuring from resource: /hibernate.cfg.xml 
Out 08, 2013 2:13:56 AM org.hibernate.cfg.Configuration getConfigurationInputStream 
INFO: HHH000040: Configuration resource: /hibernate.cfg.xml 
Out 08, 2013 2:13:56 AM org.hibernate.cfg.Configuration addResource 
INFO: HHH000221: Reading mappings from resource: emp_geo/entity/Posicao.hbm.xml 
Out 08, 2013 2:13:56 AM org.hibernate.cfg.Configuration doConfigure 
INFO: HHH000041: Configured SessionFactory: null 
Out 08, 2013 2:13:56 AM org.hibernate.service.jdbc.connections.internal.DriverManagerConnectionProviderImpl  configure 
INFO: HHH000402: Using Hibernate built-in connection pool (not for production use!) 
Out 08, 2013 2:13:56 AM org.hibernate.service.jdbc.connections.internal.DriverManagerConnectionProviderImpl configure 
INFO: HHH000115: Hibernate connection pool size: 20 
Out 08, 2013 2:13:56 AM org.hibernate.service.jdbc.connections.internal.DriverManagerConnectionProviderImpl configure 
INFO: HHH000006: Autocommit mode: false 
Out 08, 2013 2:13:56 AM org.hibernate.service.jdbc.connections.internal.DriverManagerConnectionProviderImpl configure 
INFO: HHH000401: using driver [com.mysql.jdbc.Driver] at URL [jdbc:mysql://54.214.103.119:3306/emp_geo] 
Out 08, 2013 2:13:56 AM org.hibernate.service.jdbc.connections.internal.DriverManagerConnectionProviderImpl configure 
INFO: HHH000046: Connection properties: {user=xxxxx, password=****} 
Out 08, 2013 2:13:59 AM org.hibernate.dialect.Dialect <init> 
INFO: HHH000400: Using dialect: org.hibernate.dialect.MySQL5Dialect 
Out 08, 2013 2:13:59 AM org.hibernate.engine.transaction.internal.TransactionFactoryInitiator initiateService 
INFO: HHH000399: Using default transaction strategy (direct JDBC transactions) 
Out 08, 2013 2:13:59 AM org.hibernate.hql.internal.ast.ASTQueryTranslatorFactory <init> 
INFO: HHH000397: Using ASTQueryTranslatorFactory 
Out 08, 2013 2:13:59 AM org.hibernate.search.Version <clinit> 
INFO: HSEARCH000034: Hibernate Search 4.3.0.Alpha1 
Out 08, 2013 2:13:59 AM org.hibernate.search.impl.ConfigContext getLuceneMatchVersion 
WARN: HSEARCH000075: Configuration setting hibernate.search.lucene_version was not specified, using LUCENE_CURRENT. 

当从命令行中运行,这就是我得到:

Maven + Hibernate + MySQL 
Exception in thread "main" java.lang.NoClassDefFoundError: org/hibernate/cfg/Configuration 
    at com.disko.hibernate.persistence.HibernateUtil.configureSessionFactory (HibernateUtil.java:15) 
    at com.disko.hibernate.persistence.HibernateUtil.getSessionFactory(HibernateUtil.java:23) 
    at com.disko.hibernate.App.main(App.java:21) 
Caused by: java.lang.ClassNotFoundException: org.hibernate.cfg.Configuration 
    at java.net.URLClassLoader$1.run(Unknown Source) 
    at java.net.URLClassLoader$1.run(Unknown Source) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at java.net.URLClassLoader.findClass(Unknown Source) 
    at java.lang.ClassLoader.loadClass(Unknown Source) 
    at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) 
    at java.lang.ClassLoader.loadClass(Unknown Source) 
    ... 3 more 

我一直在找里面的Java构建路径已经,选择Maven Dependencies来导出。 我希望有人能帮助我。谢谢...

+1

库类不在类路径上。 –

回答

3

这意味着您的Hibernate和Mysql环境没有正确设置。它在eclipse中运行,因为它会有一些内置的依赖关系。因此,将所需的库添加到正确的类路径中,然后尝试。

+0

这是一个确切的答案! @Patrick为了增加这一点,一些框架在安装本身时添加类路径,而如果它们不需要手动添加。 –

+0

谢谢你,我很抱歉这个愚蠢的问题。我将在稍后检查课程路径,然后如果我能解决问题,我会通知您。 –

+0

@PatrickMacedo让我知道如果你的问题在检查classpath后解决 – Jhanvi

2

在通过控制台运行程序时,您在类路径中缺少所需的jar。您可以在eclipse中检查所有需要的库/ jar,在通过控制台运行时将列表和jar包放入classpath中。

相关问题