我正在将Play 2.3项目转换为Play 2.4,并使用ErrorHandler替换了以前的Global对象,如迁移指南中所述。但是,当我尝试运行该项目时,出现错误:
Cannot init the Global object
No source available, here is the exception stack trace:
java.lang.AbstractMethodError: Global$.play$api$GlobalSettings$_setter_$play$api$GlobalSettings$$dhehCache_$eq(Lscala/Function1;)V
play.api.GlobalSettings$class.$init$(GlobalSettings.scala:33)
Global$.<init>(Global.scala:52)
Global$.<clinit>(Global.scala)
sun.misc.Unsafe.ensureClassInitialized(Native Method)
sun.reflect.UnsafeFieldAccessorFactory.newFieldAccessor(UnsafeFieldAccessorFactory.java:43)
sun.reflect.ReflectionFactory.newFieldAccessor(ReflectionFactory.java:142)
java.lang.reflect.Field.acquireFieldAccessor(Field.java:1088)
java.lang.reflect.Field.getFieldAccessor(Field.java:1069)
java.lang.reflect.Field.get(Field.java:393)
.....
等等。
项目中没有Global对象,但据我所知,这就是它应该是什么样的(因为它们被弃用了)。我做了一个干净的编译等,但没有帮助。
关于我应该从哪里开始寻找错误的想法?
答案 0 :(得分:0)
解决了这个问题;最终找到了一个尝试使用GlobalSettings对象的依赖项。删除它解决了问题。