我无法以某种方式将play.db.jpa.Model
lib 导入到我的模型中,它只能找到play.db.ebean.Model
. 有没有办法导入这个?
谢谢
我无法以某种方式将play.db.jpa.Model
lib 导入到我的模型中,它只能找到play.db.ebean.Model
. 有没有办法导入这个?
谢谢
那是因为play.db.jpa.Model
Play 1.x 和play.db.ebean.Model
Play 2.x。
要在 Play 2.x 中使用 JPA,请参阅http://www.playframework.org/documentation/2.0/JavaJPA
play.db.jpa.Model 类从 play 2.0 开始不可用。我发现这个问题的解决方案是:
YourProject/conf/application.conf
中,声明 JPA 配置:db.default.driver=org.h2.Driver
db.default.url="jdbc:h2:mem:play"
db.default.jndiName=DefaultDS
和持久化单元:
jpa.default=defaultPersistenceUnit
在 YourProject/conf/ 创建一个名为 META-INF 的新包
在这个包中创建一个名为的文件persistence.xml
:
<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_2_0.xsd" version="2.0"> <persistence-unit name="defaultPersistenceUnit" transaction-type="RESOURCE_LOCAL"> <provider>org.hibernate.ejb.HibernatePersistence</provider> <non-jta-data-source>DefaultDS</non-jta-data-source> <properties> <property name="hibernate.dialect" value="org.hibernate.dialect.H2Dialect"/> </properties> </persistence-unit> </persistence>
YourProject/project/Build.scala
修改依赖项以添加以下内容:val appDependencies = Seq(
// 在这里添加你的项目依赖,
javaCore,
javaJdbc,
javaJpa,
"org.hibernate" % "hibernate-entitymanager" % "4.2.1.Final"
)
如果您不打算使用 Ebean,您也可以禁用它:
val main = play.Project(appName, appVersion, appDependencies).settings(
ebeanEnabled := false
)
希望这可以帮助。