Playframework 2.3 升级到1.7.0.0版本后出现NoClassDefFoundError
我试图在playframework项目中将我的应用程序从1.6.2.RELEASE升级到1.7.0.RELEASE。 Insert查询工作正常,但当spring数据在针对查询获取结果后尝试使用类名膨胀对象时,似乎存在问题,如果针对查询没有结果,则返回空的arraylist而不引发错误 1.7.0.0版本在另一个基于spring集成框架的项目中运行良好 下面是statck跟踪:-Playframework 2.3 升级到1.7.0.0版本后出现NoClassDefFoundError,playframework-2.3,spring-data-mongodb,Playframework 2.3,Spring Data Mongodb,我试图在playframework项目中将我的应用程序从1.6.2.RELEASE升级到1.7.0.RELEASE。 Insert查询工作正常,但当spring数据在针对查询获取结果后尝试使用类名膨胀对象时,似乎存在问题,如果针对查询没有结果,则返回空的arraylist而不引发错误 1.7.0.0版本在另一个基于spring集成框架的项目中运行良好 下面是statck跟踪:- java.lang.NoClassDefFoundError: models/db/nosql/ACME model
java.lang.NoClassDefFoundError: models/db/nosql/ACME
models.db.nosql.ACME_Instantiator_gtblf6.newInstance(Unknown Source)
org.springframework.data.convert.BytecodeGeneratingEntityInstantiator$EntityInstantiatorAdapter.createInstance(BytecodeGeneratingEntityInstantiator.java:193)
org.springframework.data.convert.BytecodeGeneratingEntityInstantiator.createInstance(BytecodeGeneratingEntityInstantiator.java:76)
org.springframework.data.mongodb.core.convert.MappingMongoConverter.read(MappingMongoConverter.java:250)
org.springframework.data.mongodb.core.convert.MappingMongoConverter.read(MappingMongoConverter.java:231)
org.springframework.data.mongodb.core.convert.MappingMongoConverter.read(MappingMongoConverter.java:191)
org.springframework.data.mongodb.core.convert.MappingMongoConverter.read(MappingMongoConverter.java:187)
org.springframework.data.mongodb.core.convert.MappingMongoConverter.read(MappingMongoConverter.java:78)
org.springframework.data.mongodb.core.MongoTemplate$ReadDbObjectCallback.doWith(MongoTemplate.java:2191)
org.springframework.data.mongodb.core.MongoTemplate.executeFindMultiInternal(MongoTemplate.java:1873)
org.springframework.data.mongodb.core.MongoTemplate.doFind(MongoTemplate.java:1696)
org.springframework.data.mongodb.core.MongoTemplate.doFind(MongoTemplate.java:1679)
org.springframework.data.mongodb.core.MongoTemplate.find(MongoTemplate.java:598)
org.springframework.data.mongodb.core.MongoTemplate.find(MongoTemplate.java:589)
GenerateACME.reverseBizCode(GenerateACME.java:42)
Global.onStart(Global.java:23)
play.core.j.JavaGlobalSettingsAdapter.onStart(JavaGlobalSettingsAdapter.scala:22)
play.api.GlobalPlugin.onStart(GlobalSettings.scala:220)
play.api.Play$$anonfun$start$1$$anonfun$apply$mcV$sp$1.apply(Play.scala:91)
play.api.Play$$anonfun$start$1$$anonfun$apply$mcV$sp$1.apply(Play.scala:91)
scala.collection.immutable.List.foreach(List.scala:383)
play.api.Play$$anonfun$start$1.apply$mcV$sp(Play.scala:91)
play.api.Play$$anonfun$start$1.apply(Play.scala:91)
play.api.Play$$anonfun$start$1.apply(Play.scala:91)
play.utils.Threads$.withContextClassLoader(Threads.scala:21)
play.api.Play$.start(Play.scala:90)
play.core.ReloadableApplication$$anonfun$get$1$$anonfun$apply$1$$anonfun$1.apply(ApplicationProvider.scala:157)
play.core.ReloadableApplication$$anonfun$get$1$$anonfun$apply$1$$anonfun$1.apply(ApplicationProvider.scala:130)
scala.Option.map(Option.scala:145)
play.core.ReloadableApplication$$anonfun$get$1$$anonfun$apply$1.apply(ApplicationProvider.scala:130)
play.core.ReloadableApplication$$anonfun$get$1$$anonfun$apply$1.apply(ApplicationProvider.scala:128)
scala.util.Success.flatMap(Try.scala:230)
play.core.ReloadableApplication$$anonfun$get$1.apply(ApplicationProvider.scala:128)
play.core.ReloadableApplication$$anonfun$get$1.apply(ApplicationProvider.scala:120)
scala.concurrent.impl.Future$PromiseCompletingRunnable.liftedTree1$1(Future.scala:24)
scala.concurrent.impl.Future$PromiseCompletingRunnable.run(Future.scala:24)
scala.concurrent.forkjoin.ForkJoinTask$AdaptedRunnableAction.exec(ForkJoinTask.java:1361)
scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260)
scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)
scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979)
scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)
我也面临着这个错误。我认为这是spring data mongodb的缺陷 如果数据库模型和所有服务、存储库都在一个项目中,则不会出现此类错误。 但如果服务在另一个项目中,它可以100%复制。我没有办法避免这个错误
现在,我尝试在mongodb持久层上使用OGM。models/db/nosql/ACME是什么样子?这是Java类还是Scala类?那么,您介意展示一下吗?水晶球太雾了,否则我也有同样的麻烦。在一些搜索之后,我意识到这可能是一个bug,我不得不将spring data mongodb降级到1.6.2.RELEASE版本。关于这个问题的任何更新,我也面临着同样的问题,尝试使用morphia库,经过长时间的调查,它工作得很好,唯一的方法是spring data mongodb 1.6.2版本。我怀疑自我转换可能是一个解决办法,但我不尝试。这个错误并没有固定在1.8.xm1上。