【发布时间】:2014-04-03 18:53:35
【问题描述】:
我目前正在学习 Play 框架,但很快就遇到了一些麻烦。
我有一个独立的 Java 项目,它使用 Hibernate 从 MySQL 数据库中持久化和获取数据。这个项目充满了 DTO 和 DAO。
我认为在我的新 Play 框架项目中引用 Hibernate 项目是个好主意,因此可以通过它利用不同的 DAO 和 DTO。
一切都在 Eclipse 中编译,但是在浏览器中运行我的 Play 应用程序时,我收到一个错误,即找不到包 com.path.to.hibernate.project.package。
在 Play 框架中是否有引用其他项目的秘密方法,或者我只是做错了?我有点喜欢将 Hibernate 的东西与 Play 框架的东西分开的想法。
如果您认为我应该对此采取不同的方法,我会全力以赴。
谢谢。
编辑:
build.sbt(相当于 Build.scala?)
name := "klepp_rc_play"
version := "1.0-SNAPSHOT"
libraryDependencies ++= Seq(
javaJdbc,
javaEbean,
cache,
"mysql" % "mysql-connector-java" % "5.1.29"
)
play.Project.playJavaSettings
application.conf
...
db.default.driver=com.mysql.jdbc.Driver
db.default.url="jdbc:mysql://localhost/play"
db.default.user=****
db.default.password=****
ebean.default="models.*"
...
conf/META-INF/persistence.xml
<?xml version="1.0" encoding="UTF-8"?>
<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.MySQL5Dialect" />
<property name="hibernate.hbm2ddl.auto" value="create" />
</properties>
</persistence-unit>
</persistence>
【问题讨论】:
-
向我们展示一些配置文件。至少一个
Build.scala。这在我看来是一个sbt问题。 -
感谢您的回复。我现在已经编辑了几个配置文件。据我所知,build.sbt 相当于 Build.scala?
-
差不多。
-
可能你在项目的eclipse中设置了依赖,但是
sbt中没有设置。您必须告诉您的应用程序您的本地模块。例如看这个答案:stackoverflow.com/questions/8330149/… -
再次感谢。我可以从该示例中看到使用了 Build.scala 文件。除了我的 build.sbt 文件之外,我还能有一个这样的 Build.scala 文件吗?如果不是,请给我一个示例,说明如何以 build.sbt 友好的方式定义根项目?
标签: hibernate playframework playframework-2.2