在线程"main"中获取异常; java.lang.ExceptionInInitializerError异常 [英] Getting Exception in thread "main" java.lang.ExceptionInInitializerError Exception

查看:118
本文介绍了在线程"main"中获取异常; java.lang.ExceptionInInitializerError异常的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在运行以下代码时得到Exception in thread "main" java.lang.ExceptionInInitializerError

I am getting Exception in thread "main" java.lang.ExceptionInInitializerError while running following code,

public class JPAUtil {

    private static final EntityManagerFactory emFactory;

    static {
        try {
            emFactory = Persistence.createEntityManagerFactory("org.hibernate.events");
        }catch(Throwable ex){
            System.err.println("Cannot create EntityManagerFactory.");
            throw new ExceptionInInitializerError(ex);
        }
    }

    public static EntityManager createEntityManager() {
        return emFactory.createEntityManager();
    }

    public static void close(){
        emFactory.close();
    }
}

堆栈跟踪:

Cannot create EntityManagerFactory.
Exception in thread "main" java.lang.ExceptionInInitializerError
    at util.JPAUtil.<clinit>(JPAUtil.java:16)
    at event.EventManager.createAndStoreEvent(EventManager.java:30)
    at event.EventManager.main(EventManager.java:18)
Caused by: javax.persistence.PersistenceException: No Persistence provider for EntityManager named org.hibernate.events
    at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:69)
    at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:47)
    at util.JPAUtil.<clinit>(JPAUtil.java:13)
    ... 2 more

请帮助我&告诉我我错了吗?

Please help me & tell me where i am wrong?

推荐答案

emFactory = Persistence.createEntityManagerFactory("org.hibernate.events");

正确的语法:

emFactory = Persistence.createEntityManagerFactory("org.hibernate.events.jpa");

这篇关于在线程"main"中获取异常; java.lang.ExceptionInInitializerError异常的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆