Như đã nêu trên đối tượng, vấn đề của tôi là EntityManagerFactory
không thể được xây dựng. Tôi đang sử dụng Maven + Hibernate. Tôi đang kết nối với một DB MySQL (<jdbc://mysql://localhost:3306/<dbname>
).[PersistenceUnit: <name>]: không thể xây dựng EntityManagerFactory
Điều kỳ lạ ở đây là trong khi gỡ lỗi trong Eclipse, nó hoạt động tốt. Nhưng khi tôi xây dựng nó bằng cách sử dụng xây dựng Maven, tệp JAR đang ném lỗi như vậy. Tôi đã kiểm tra tệp kê khai đã có và tất cả các JAR cần thiết được bao gồm trong Class-Path. Dưới đây là lỗi của JAR được hiển thị trong bảng điều khiển:
================================== =========================================
Feb 3, 2012 5:01:16 PM org.hibernate.annotations.common.Version <clinit>
INFO: HCANN000001: Hibernate Commons Annotations {4.0.1.Final}
Feb 3, 2012 5:01:16 PM org.hibernate.Version logVersion
INFO: HHH000412: Hibernate Core {4.0.1.Final}
Feb 3, 2012 5:01:16 PM org.hibernate.cfg.Environment <clinit>
INFO: HHH000206: hibernate.properties not found
Feb 3, 2012 5:01:16 PM org.hibernate.cfg.Environment buildBytecodeProvider
INFO: HHH000021: Bytecode provider name : javassist
Feb 3, 2012 5:01:16 PM org.hibernate.service.jdbc.connections.internal.DriverManagerConnectionProviderImpl configure
INFO: HHH000402: Using Hibernate built-in connection pool (not for production use!)
Feb 3, 2012 5:01:16 PM class <name>.<name>.<name> <name>
SEVERE: [ERROR]: [PersistenceUnit: <name>] Unable to build EntityManagerFactory
[ERROR]: [PersistenceUnit: <name>] Unable to build EntityManagerFactory
== ================================================== =======================
dưới đây là persistence.xml tôi:
<persistence xmlns="http://java.sun.com/xml/ns/persistence"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/persistence
http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd"
version="1.0">
<persistence-unit name="<name>">
<provider>org.hibernate.ejb.HibernatePersistence</provider>
<class>classname</class>
<properties>
<!-- <property name="hibernate.ejb.cfgfile" value="/classifyPE.cfg.xml"/> -->
<property name="hibernate.connection.driver_class" value="com.mysql.jdbc.Driver" />
<property name="hibernate.connection.password" value="<value>" />
<property name="hibernate.connection.url" value="jdbc:mysql://localhost:3306/<name>" />
<property name="hibernate.connection.username" value="root" />
<property name="hibernate.dialect" value="org.hibernate.dialect.MySQLDialect" />
</properties>
</persistence-unit>
</persistence>
========= ================================================== ================
Tôi đang làm gì sai ở đây? Hay tôi đang thiếu gì?
Như đã đề cập, nó hoạt động trên Debug. Nhưng khi tôi gói nó vào JAR, (với tất cả các JAR cần thiết có trong thư mục libs), nó không phải.
Tôi đoán có nhiều hơn thế trong giao diện điều khiển phải của bạn? Có lẽ một dấu vết ngăn xếp chi tiết? – tartak
Phải có nhiều nhật ký bên dưới sự thực thi nhất định, vui lòng đăng chúng –