【问题标题】:Hibernate in Eclipse null pointer exceptionHibernate 在 Eclipse 空指针异常中
【发布时间】:2014-12-20 08:30:42
【问题描述】:

我正在处理一个使用 Java JDK 64 位 1.8.0.25 通过 Eclipse (Luna) 使用 HSQLDB (2.3.2) 和 Hibernate (4.3.6) 的 Java 项目,我准备了一个非常小而简单的测试类查询数据库。

就我将应用程序作为标准 java 应用程序(即从命令行)运行而言,一切正常,但是当我尝试从 Eclipse 调试或运行应用程序时,在注册表构建器初始化期间出现错误(请参阅星号) :

Configuration c1= new Configuration();                
c1.configure("/hibernate.cfg.xml");        
**serviceRegistry = new StandardServiceRegistryBuilder().applySettings( c1.getProperties()).build();**       
return c1.buildSessionFactory(serviceRegistry );

错误是:

ott 24, 2014 3:29:39 PM org.hibernate.annotations.common.reflection.java.JavaReflectionManager <clinit>
INFO: HCANN000001: Hibernate Commons Annotations {4.0.5.Final}
ott 24, 2014 3:29:39 PM org.hibernate.Version logVersion
INFO: HHH000412: Hibernate Core {4.3.6.Final}
ott 24, 2014 3:29:39 PM org.hibernate.cfg.Environment <clinit>
INFO: HHH000205: Loaded properties from resource hibernate.properties:     {hibernate.bytecode.use_reflection_optimizer=false}
ott 24, 2014 3:29:39 PM org.hibernate.cfg.Environment buildBytecodeProvider
INFO: HHH000021: Bytecode provider name : javassist
ott 24, 2014 3:29:40 PM org.hibernate.cfg.Configuration configure
INFO: HHH000043: Configuring from resource: /hibernate.cfg.xml
ott 24, 2014 3:29:40 PM org.hibernate.cfg.Configuration getConfigurationInputStream
INFO: HHH000040: Configuration resource: /hibernate.cfg.xml
ott 24, 2014 3:29:41 PM org.hibernate.cfg.Configuration addResource
INFO: HHH000221: Reading mappings from resource: test/db/generated/MainConfParams.hbm.xml
ott 24, 2014 3:29:42 PM org.hibernate.cfg.Configuration doConfigure
INFO: HHH000041: Configured SessionFactory: null
Initial SessionFactory creation failed.java.lang.NullPointerException
Exception in thread "main" java.lang.ExceptionInInitializerError
            at test.db.HibernateUtil.buildSessionFactory(HibernateUtil.java:28)
            at test.db.HibernateUtil.getSessionFactory(HibernateUtil.java:34)
            at test.db.Test.createAndStoreEvent(Test.java:26)
            at test.db.Test.main(Test.java:17)
Caused by: java.lang.NullPointerException
            at     org.hibernate.boot.registry.classloading.internal.ClassLoaderServiceImpl$AggregatedClassLoader.getResources(ClassLoaderServiceImpl.java:186)
            at java.util.ServiceLoader$LazyIterator.hasNextService(ServiceLoader.java:348
            at java.util.ServiceLoader$LazyIterator.hasNext(ServiceLoader.java:393)
            at java.util.ServiceLoader$1.hasNext(ServiceLoader.java:474)
            at org.hibernate.boot.registry.classloading.internal.ClassLoaderServiceImpl.loadJavaServices(ClassLoaderServiceImpl.java:339)
            at org.hibernate.integrator.internal.IntegratorServiceImpl.<init>(IntegratorServiceImpl.java:57)
            at org.hibernate.boot.registry.BootstrapServiceRegistryBuilder.build(BootstrapServiceRegistryBuilder.java:247)
            at org.hibernate.boot.registry.StandardServiceRegistryBuilder.<init>(StandardServiceRegistryBuilder.java:73)
            at test.db.HibernateUtil.buildSessionFactory(HibernateUtil.java:22)
            ... 3 more

你能帮帮我吗?我认为它与属性文件无关,因为它们被正确解析和使用。

【问题讨论】:

    标签: java eclipse hibernate class hsqldb


    【解决方案1】:

    感谢 Eclipse 支持,我们设法解决了这个问题,原因是 Hibernate 库定义为“系统”库。

    您可以通过此链接获取所有详细信息:https://www.eclipse.org/forums/index.php/m/1476143/#msg_1476143

    BR

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-03-19
      • 1970-01-01
      • 2013-03-22
      • 1970-01-01
      • 2012-06-05
      • 1970-01-01
      • 2015-11-21
      • 1970-01-01
      相关资源
      最近更新 更多