1

当尝试使用 Morphia for MongoDB 启动 Play Java 应用程序时,我得到以下堆栈跟踪,这是由于重新编译已编译的过滤器类型引起的:

Internal Server Error (500) for request GET /

Compilation error (In {module:morphia-1.2.3d}/app/morphia/Filter.java around line 8)
The file {module:morphia-1.2.3d}/app/morphia/Filter.java could not be compiled. Error raised is : The type Filter is already defined

play.exceptions.CompilationException: The type Filter is already defined at play.classloading.ApplicationCompiler$2.acceptResult(ApplicationCompiler.java:246)
        at org.eclipse.jdt.internal.compiler.Compiler.handleInternalException(Compiler.java:672)
        at org.eclipse.jdt.internal.compiler.Compiler.compile(Compiler.java:516)
        at play.classloading.ApplicationCompiler.compile(ApplicationCompiler.java:278)
        at play.classloading.ApplicationClassloader.getAllClasses(ApplicationClassloader.java:412)
        at play.Play.start(Play.java:485)
        at play.Play.detectChanges(Play.java:599)
        at play.Invoker$Invocation.init(Invoker.java:186)
        at Invocation.HTTP Request(Play!)
~ ...
4

1 回答 1

2

当从 application.conf 和 dependencies.yml 加载 morphia 模块时会发生此问题

要解决它,请转到您的 application.conf 并注释掉“加载 morphia 模块”下面的行,然后重新启动 Play。

# load morphia module 
#module.morphia=${play.path}/modules/morphia-1.2.3d
于 2011-10-27T21:05:45.780 回答