2016-04-11 3 views
1

Мне нужно с гордостью развернуть проект helloworld на платформе Java в Play. Прежде чем я решил рассмотреть его в качестве основной структуры проекта, который я хочу построить, я решил поиграть. Меня беспокоит одна вещь среди нескольких:Играть время компиляции в карьере стоит усилий по развитию?

  1. Горячая компиляция отличная, но она очень медленная. Небольшое изменение в строке вызывает всю компиляцию проекта, которая занимает ~ 30 секунд. По сравнению с Python Django это очень медленно. Я мог бы просто изменить все, что захочу, включая системные вызовы, и он будет работать только при обновлении, как будто это не имеет значения для рамки, что было изменено.

Я пропустил что-то здесь о Play? Меня беспокоит время разработки. Если каждый раз, когда я что-то добавляю и должен ждать ~ 30 секунд, чтобы проверить это, это огромный удар. Но я уверен, что это были определенные соображения при создании этой блестящей структуры. Цените свои мысли! Пожалуйста, просветите и позвольте мне играть! :)

+0

Это определенно что-то не так ... небольшие изменения перезагружаются в течение менее 1 секунды. Время перезарядки может увеличиться, когда ваш проект растет и включает в себя все больше зависимостей, но привет мир не случай для этого – biesior

+0

вы можете сообщить мне свою среду разработки? Я использую eclipse IDE и командную строку для активатора, и нахожу ее довольно медленной при горячей перезагрузке. – theblackpearl

+0

Idea Ultimate, Mac OS El Capitan, i5, вы также можете проверить, есть ли проблема IDE, просто запустите приложение с терминала (mac/linux) cmd (win) с помощью команды. ./activator ~ run', а затем используйте некоторые простой редактор (блокнот или smtg) для редактирования файлов и наблюдения, если он по-прежнему горячо перезагружается. – biesior

ответ

2

Во-первых, вы сравниваете структуру Java и Python. Итак, да, горячая компиляция занимает больше времени, чем перезапуск на основе Django. Но по сравнению с другими платформами Java, такими как Spring, я нахожу это преимущество огромным.

Во-вторых, на каком оборудовании/платформе вы работаете? Я пытался Сыграть в этих условиях:

(1) Код на Eclipse, Play запустить сервер с помощью activator run в командной строке
Refresh занимает около 8-10 секунд при 10KLOC размера проекта.

(2) код в IntelliJ Ultimate, Play запустить сервер в IntelliJ
Refresh занимает 1 секунду для небольшого изменения в 20KLOC размера проекта.

8-10 секундное время перезарядки в первом случае меня не беспокоило. И когда я начал использовать IntelliJ, я был очень доволен повышением скорости.

В заключении:
(1) Я люблю горячую перезарядка игры
(2) С помощью IntelliJ Окончательного сделали еще лучше (примечание: бесплатная версия не поддерживает воспроизведение)

Примечания : Я не отношусь к Play Framework или IntelliJ каким-либо образом, кроме как быть счастливым первым пользователем.

+0

Спасибо Аарону, есть некоторое удовольствие узнать время обновления, значительно сокращенное с помощью IntelliJ, попробует. – theblackpearl

+0

Добро пожаловать. Обратите внимание, что я использую версию Ultimate. Бесплатная версия не поддерживает Play. – Aaron

+0

Получил окончательное издание, давайте посмотрим :) – theblackpearl

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