Как заставить Eclipse увидеть изменения в Play! скомпилированные шаблоны?

Итак, я пробую Play 2 с Eclipse. Я создаю новый проект, компилирую его, запускаю eclipsify и импортирую его в Eclipse. Все идет нормально.

У меня проблема в том, что когда я делаю изменения в шаблоне Scala, мои контроллеры Java не видят его, и Eclipse помечает код как недействительный. Например:

Я добавил второй параметр в свой шаблон индекса

@(message: String, nesto:Integer)

Когда я пытаюсь визуализировать мой файл из контроллера, в следующей строке отображается ошибка, потому что Eclipse по-прежнему считает, что index.render принимает одну строку.

return ok(index.render("Your new application is ready.",2));

Я включил обновление рабочей области в Eclipse, и игра eclipsify автоматически добавила каталог classes_managed в путь сборки.

4 ответа

Я сделал следующие вещи:

  1. Как и вы, я включил автоматическое обновление рабочей области (в настройках Общие -> Рабочая область, затем выберите "Обновить с помощью собственных перехватов или пула")
  2. Я удалил classes_managed каталог, созданный play eclipsify из моего пути сборки, и я добавил его вручную, используя "Добавить внешнюю папку класса"

И тогда это сработало для меня. Кажется, что есть ошибка с eclipsify команда.

Хитрость заключается в том, чтобы автоматически создавать Play в фоновом режиме (файлы шаблонов в настоящее время не создаются Eclipse, поэтому вам нужно Play, чтобы перевести их для вас). Это все подробно объясняется здесь:

[неработающая ссылка] http://scala-ide.org/docs/tutorials/play20scalaide20/index.html

[попробуйте это] http://scala-ide.org/docs/tutorials/play/index.html

  1. Запустите 'play eclipse' в командной строке
  2. В Eclipse обновите свой проект, нажав F5

Для Java Play Framework v2.4.6 (активатор v1.3.7) с Eclipse Mars:

Вместо @(message: String, nesto:Integer) ты пробовал это @(message: String)(nesto: Integer)?

Так что у вас не будет "не удается устранить ошибку" с вашим index.render()Вы можете добавить это <classpathentry kind="lib" path="target/scala-2.11/classes"/> на ваш .classpath или щелкните правой кнопкой мыши свой проект -> Путь сборки -> Настроить путь сборки -> Добавить папку классов и сделайте так, чтобы он указывал на target/scala-2.11/classes,

Другие вопросы по тегам