在 Windows 8 64 位机器上,在 Eclipse Luna 中,我使用 JPA (EclipseLink 2.5.x) 和 Apache Derby 作为 JDBC 连接。
到目前为止我的 persistence.xml:
<?xml version="1.0" encoding="UTF-8"?>
<persistence version="2.1" xmlns="http://xmlns.jcp.org/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistence http://xmlns.jcp.org/xml/ns/persistence/persistence_2_1.xsd">
<persistence-unit name="ReportWriter" transaction-type="RESOURCE_LOCAL">
<class>com.example.Clazz</class>
<class>com.example.CommentBank</class>
<class>com.example.CommentCategory</class>
<class>com.example.CourseWork</class>
<class>com.example.GradeModel</class>
<class>com.example.Pupil</class>
<class>com.example.PupilCoursework</class>
<class>com.example.Report</class>
<class>com.example.Year</class>
<properties>
<property name="javax.persistence.jdbc.url" value="jdbc:derby:D:\rwdb.db"/>
<property name="javax.persistence.jdbc.user" value="rwdbuser"/>
<property name="javax.persistence.jdbc.password" value="rwdbpassword"/>
<property name="javax.persistence.jdbc.driver" value="org.apache.derby.jdbc.EmbeddedDriver"/>
<property name="eclipselink.jdbc.exclusive-connection.is-lazy" value="true"/>
</properties>
</persistence-unit>
</persistence>
使用向导,我在 Eclipse 中创建了一个新的数据库连接,效果很好。
当我想执行 JPA Tools
=> Generate Tables From Entities
时,eclipse 开始创建表...并一直持续下去。没有异常,没有其他消息,它只是阻塞了这个操作。
我什至不能取消它。如果我尝试这样做,它只会向该项目添加“已请求取消”并继续进行。关闭 eclipse 也是不可能的,因为它正在等待其当前操作的完成。
.metadata\.log
不包含任何关于此的新信息。
哦,为了以防万一,我选择了“sql-script”作为输出。
有什么想法吗?
最佳答案
应该生成的类已经列在 persistence.xml
中。
一旦我这样做了,它就奏效了。
关于java - JPA Eclipse "Generating Tables From Entities"永远挂起,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24978844/