Модуль morphia ObjectIdBinder уже определил ошибку

Я новичок в morphia, mongoDB и playframework. Я пытаюсь использовать их для производства. Мой код работал нормально, когда я последний раз запускал его на прошлой неделе. Сегодня утром я продолжаю получать следующую ошибку, и я понятия не имею, как ее исправить:

10:20:53,048 INFO ~ Starting /home/user/NetBeansProjects/um 10:20:53,056 WARN ~ Объявление модулей в application.conf устарело. Используйте вместо этого файл dependencies.yml (module.morphia) 10:20:53,060 INFO ~ Модуль morphia доступен (/home/user/play-1.2.2/modules/morphia-1.2.1beta6) 10:20:53,062 INFO ~ Модуль morphia доступен (/home/user/play-1.2.2/modules/morphia-1.2.1beta6) 10:20:54,538 ПРЕДУПРЕЖДЕНИЕ ~ Вы используете Play! в режиме DEV 10:20:54,828 INFO ~ Прослушивание HTTP на порту 9000 (ожидание первого запроса на запуск) ... 10:21:03,741 ОШИБКА ~

@ 67c6i5h2e Внутренняя ошибка сервера (500) для запроса GET /

Ошибка компиляции (в {module:morphia-1.2.1beta6}/app/morphia/ObjectIdBinder.java около строки 12) Не удалось скомпилировать файл {module:morphia-1.2.1beta6}/app/morphia/ObjectIdBinder.java. Возникла ошибка: тип ObjectIdBinder уже определен

play.exceptions.CompilationException: тип ObjectIdBinder уже определен в play.classloading.ApplicationCompiler$2.acceptResult(ApplicationCompiler.java:246) в org.eclipse.jdt.internal.compiler.Compiler.handleInternalException(Compiler.java:672) в org.eclipse.jdt.internal.compiler.Compiler.compile(Compiler.java:516) в play.classloading.ApplicationCompiler.compile(ApplicationCompiler.java:278) в play.classloading.ApplicationClassloader.getAllClasses(ApplicationClassloader.java:412) at play.Play.start(Play.java:482) at play.Play.detectChanges(Play.java:596) at play.Invoker$Invocation.init(Invoker.java:186) at Invocation.HTTP Request(Play!)

Я не помню, чтобы что-то менялось в коде.


person deVIAntCoDE    schedule 10.08.2011    source источник


Ответы (1)


Это показывает, что вы включаете модуль morphia дважды. Однажды в application.conf. А второй раз предполагаю в файле зависимостей.

10:20:53,056 WARN ~ Declaring modules in application.conf is deprecated. Use dependencies.yml instead (module.morphia) 
10:20:53,060 INFO ~ Module morphia is available (/home/user/play-1.2.2/modules/morphia-1.2.1beta6) 
10:20:53,062 INFO ~ Module morphia is available (/home/user/play-1.2.2/modules/morphia-1.2.1beta6)

Проверьте свой файл dependencies.yml в папке conf вашего проекта, там должен быть пункт "- morphia" или "- play -> morphia". Поскольку первый теперь устарел, вам, вероятно, следует подавить следующее:

module.morphia=../morphia
person yco    schedule 10.08.2011
comment
Спасибо. Модуль MOrphia загружался дважды, поэтому я отключил один из них. Избавился от его версии зависимостей и переместил файлы jar в каталог локального модуля проектов. - person deVIAntCoDE; 14.08.2011