Mysql EBean:java.lang.IllegalStateException:Bean类模型。用户是否未增强?
我有一个Play 2.4.6应用程序,在两天前还可以正常工作。从昨天开始,我就犯了这个错误:Mysql EBean:java.lang.IllegalStateException:Bean类模型。用户是否未增强?,mysql,playframework,playframework-2.0,ebean,Mysql,Playframework,Playframework 2.0,Ebean,我有一个Play 2.4.6应用程序,在两天前还可以正常工作。从昨天开始,我就犯了这个错误: [[37minfo] - application - Creating Pool for datasource 'default' [[31merror] - com.avaje.ebeaninternal.server.deploy.BeanDescriptorManager - Error in deployment java.lang.IllegalStateException: Bean cla
[[37minfo] - application - Creating Pool for datasource 'default'
[[31merror] - com.avaje.ebeaninternal.server.deploy.BeanDescriptorManager - Error in deployment
java.lang.IllegalStateException: Bean class models.User is not enhanced?
at com.avaje.ebeaninternal.server.deploy.BeanDescriptorManager.setEntityBeanClass(BeanDescriptorManager.java:1405) ~[avaje-ebeanorm-6.8.1.jar:na]
我已经在寻找解决方案,但我仍然会犯这个错误。甚至,我也尝试过使用插件2.0
addSbtPlugin("com.typesafe.sbt" % "sbt-play-ebean" % "2.0.0")
我怎样才能修好它
提前谢谢大家,
更新:最后,我重写了代码,删除了EBean,并开始使用Play框架的数据库池和JDBC的PreparedStatement
。很好。我将把这个问题留在这里,希望它能帮助其他人。检查以下内容:
ebean.default=[“models.*”]
addSbtPlugin(“com.typesafe.sbt“%”sbt播放增强程序“%”1.1.0”)
lazy val root=(文件中的项目(“.”)中启用了PlayEbean。enablePlugins(PlayJava,PlayEbean)
如果你想和Eben再试试,这对我来说很有帮助
如果您
尝试了所有给定的解决方案
但无法解决问题,请检查项目的JDK版本
Java11有一些问题尝试Java8或更低版本。根据您使用的playframework版本,您可能需要更改
ebean.default= ["models.*", "another.models.*"]
到
您可以在此处找到更多详细信息:
除此之外,还需要为需要eBean增强器的每个模块配置playEbeanModels。例如:
lazy val domainModel = (project in file("domain-model")).enablePlugins(PlayJava, PlayEbean).settings(Seq(
libraryDependencies ++= Seq(
"org.projectlombok" % "lombok" % "1.18.4",
"com.h2database" % "h2" % "1.4.197",
guice),
playEbeanModels in Compile := Seq("com.mycompany.model.*"), // this should match the package name from above ebean.default="com.mycompany.model.*
playEbeanDebugLevel := 4
)
这里也可以找到一些解释:
我会为其他人放弃这个,而这些人都不适合
在我的application.conf
文件中,我有以下内容
ebean.default=["models.*"]
ebean.secondary=["ExternalModels.*"]
而且我也开始出名了
Bean类外部模型。用户是否未增强?错误
为了解决这个问题,我所做的只是将ExternalModels包移动到一个新包中,并将其命名为ebean.secondary.ExternalModels
错误消失了 我检查了所有这些。谢谢你,你用的是什么版本的剧本?还有什么变化可能是一致的吗?Play 2.4.6,Scala 2.11.6,Sbt 0.13.9,PlayEBean 1.0.0。我也用PlayEBean 2.0.0进行了测试…您可以查看最新的sbt play enhancer版本。当我按照此视频说明使用插件
Ebean 4x增强功能时,它解决了我的问题,谢谢!这是我的问题。我试图让一个旧项目运行在一个新的m1mac上,使用java15。正如在Play Enhancer上所指出的,它不适用于JDK 11+。我让它在一台使用Java8的旧机器上工作。
ebean.default=["models.*"]
ebean.secondary=["ExternalModels.*"]