Процедура обновления Scala для стека Typesafe/Scala под IntelliJ?

Scala — отличный язык. Не менее впечатляет интеграция IntelliJ 12 со стеком Typesafe (Scala, Akka и Play Framework).

Но процесс обновления версии Scala под IntelliJ не совсем ясен. Я использую Play 2.0, IntelliJ 12 и в настоящее время Scala 2.91. Моя первая попытка перейти на Scala 2.10 не увенчалась успехом: существующие проекты Play по-прежнему зациклены на использовании библиотек Scala 2.91 и компилятора 2.91. Попытка создать новые проекты Play и выполнить команду «idea»: сгенерированные файлы проекта IJ созданы для версии 2.91.

Даже если я явно удалю .jars 2.91 и добавлю .jars 2.10, кажется, что я все еще застрял с компилятором 2.91 Scala. Просто должен быть более простой способ обновить Scala, и при этом иметь полный стек Typesafe, построенный и запущенный под IJ 12 ... Я просто еще не нашел его.


person Ryan Delucchi    schedule 04.02.2013    source источник


Ответы (1)


Чтобы использовать Scala 2.10 с Play, вам необходимо перейти на Play 2.1.

person James Ward    schedule 05.02.2013
comment
Итак, если я правильно понимаю ... Я могу установить play 2.1, обновить scala 2.10, а затем команда play будет правильно инициализировать проект для использования в IJ? Я столкнулся с проблемами, когда он жаловался на мою версию SBT, но, если вам на самом деле повезло с этим - я могу еще раз попробовать и посмотреть, не пропустил ли я что-то. - person Ryan Delucchi; 06.02.2013
comment
Ага! Только что вышла Play 2.1. Обязательно прочтите Руководство по миграции. - person James Ward; 06.02.2013
comment
Ага, каким-то образом мне удалось пропустить руководство по миграции с первой попытки. Спасибо что подметил это! Я отчитаюсь о том, как все пройдет. - person Ryan Delucchi; 06.02.2013
comment
Хорошо, я приближаюсь к тому, чтобы заставить это работать, но у меня все еще есть проблема с командой Play idea. После выдачи идеи игры ${project_root}/target содержит каталог scala-2.10. Но ${project_root}/project/target содержит каталог scala-2.9.2. Я могу нормально запускать воспроизведение из командной строки, но IJ 12 не получает файлы scala, которые создаются из шаблонов (что приводит к ошибкам компилятора при обращении к представлениям из контроллера). Также просматриваю библиотеки... Все библиотеки 2.9.2 отображаются вместе с библиотеками 2.10. - person Ryan Delucchi; 07.02.2013
comment
Мне пришлось удалить файлы .idea* и *.iml, затем выполнить play clean idea, а затем снова открыть проект. - person James Ward; 07.02.2013
comment
Все еще нет любви ... Я даже создал совершенно новый проект (играйте в новый тест ... затем играйте в идею), и я получаю оба scala-2.9.2, появляющиеся в одном целевом подкаталоге внутри проекта. и scala-2.10 в другом целевом подкаталоге проекта. И когда я открываю проект в IJ, все еще полностью из шланга. Я довольно сбит с толку в этот момент. - person Ryan Delucchi; 07.02.2013
comment
Хм, кажется, это меня кусает: integrating-a-play-2-app" title="library scala 2 10 0 rc1 не используется, созданная intellij для интеграции приложения play 2"> stackoverflow.com/questions/14248159/ - person Ryan Delucchi; 07.02.2013
comment
Похоже, мне нужно вручную удалить старую библиотеку Scala и добавить новую (и убедиться, что внешняя компиляция отключена). Хотя сейчас вроде работает! - person Ryan Delucchi; 07.02.2013
comment
Учитывая, что объединение вашего предложения и всех поддерживающих комментариев привело меня к решению (за исключением некоторой неуклюжести с IJ и некоторых любопытных файлов, которые создаются в одном из целевых каталогов) - я принимаю этот ответ. Спасибо еще раз! - person Ryan Delucchi; 07.02.2013