2015-01-27 4 views
1

Я создаю проект Scala Play 2.0, затем добавьте объект Test с помощью barebone main.Запуск объектов в Play 2.0 Framework

Когда я запускаю объект Test, я получаю ClassDefNotFoundError. Это связано с тем, что объект Test, по-видимому, не компилируется в файл в любой папке проекта.

Запуск подключенного Игрового сервера работает нормально.

Неужели кто-нибудь попытался добавить запущенный объект в проект Scala Play и имел успех?

Объект Test создается в новом модуле, в рамках проекта воспроизведения с именем test-module.

**** Обновление ****

Похоже, SBT каким-то образом конфликтует с модулем 'тест-модуля'. Play - это проект SBT, поэтому он компилируется в свою «целевую» директорию. Однако «тестовый модуль» не является SBT и поэтому хочет скомпилировать его в каталог «out». Проблема заключается в том, что скомпилированные файлы никогда не попадают в каталог «out», на самом деле они вообще не попадают ни в какой каталог.

+0

Можете ли вы показать код и указать местоположение в проекте, где вам создал тестовый объект? – Salem

+0

На самом деле нет кода для показа, Play 2.0 создается IntelliJ 14. И объект Test - это приветственный мир hello. Никаких ошибок в любом коде не гарантируется. Обновление OP с местоположением сейчас. – BAR

+0

Является ли 'test-module' каталогом верхнего уровня вашего проекта Play? Потому что код приложения должен находиться в папке 'app' по умолчанию. Что конкретно вы подразумеваете под * runnable object *, кстати, точкой входа приложения? – PermaFrost

ответ

0

Шаблон IntelliJ для проекта Play предполагает, что Play будет каталогом верхнего уровня.

При создании модуля внутри здесь необходимо зарегистрировать его с помощью SBT, поскольку это не делается автоматически.

И убедитесь, что следовать модульно> src-> Main-> SCALA конвенции для исходных файлов, или изменить его в build.sbt

Смежные вопросы