Подтвердить что ты не робот

Intellij IDEA не может разрешить символ с помощью платформы Play

Я использую IDEA 13 с Play 2.2.1 и делаю примеры на игровом сайте.

public static Result index() {
   return redirect(routes.Application.tasks());
}

IDEA говорит: "Невозможно разрешить переадресацию метода (?)", а красный подчеркивает маршруты. Application.tasks()

Я выполнил "компиляцию", а затем "идею" с игровой консоли.

4b9b3361

Ответ 1

У меня была аналогичная проблема при тестировании моего контроллера. Я решил его с помощью "File" > "Open Project" и выбрать базовую папку проекта платформы Play (удалить все файлы настроек идеи из папки до того, как она будет reimport с использованием настроек SBT).

Последняя версия поддержки SBT для IDEA выполнила 90% работы. Затем F4 войдет в диалоговое окно настроек модуля. Настройте зависимости проекта, как на картинке ниже (яркая красная папка была установлена ​​IDEA и еще не существует в моем проекте, поэтому не беспокойтесь, если они это сделают в вашем). Речь идет о включении управляемых классов и сгенерированного кода в код, который идея будет использовать и индексировать.

enter image description here

теперь я могу использовать такой код из IDEA и отлаживать его без проблем.

Result result = Helpers.callAction(controllers.routes.ref.CrudController.createEntity(CrudEntities.contact.name()),
        new FakeRequest().withJsonBody(paramJson)
);

Ваш способ сделать это тоже должен работать.

Ответ 2

Ну, я использую "IntelliJ Idea 13" и делаю проект "sbt" Playframework с "Activator". После того, как все прошло, я, наконец, решил эту проблему следующими шагами в терминале /cmd в существующем корневом sbt-проекте

  • введите эту команду в терминал /cmd: sbt clean
  • затем удалите эти файлы и папки: ".idea", "all _.iml files", "все целевые папки находятся в папке проекта (это может быть необязательно, но я сделал это.)"
  • введите эту команду в терминал /cmd: sbt idea
  • теперь в IntelliJ: открытый проект

Примечание: Если вы создаете проект Playframework с помощью команды "Play" вместо "Activator", вместо команды sbt idea вы можете попробовать play idea или play "idea with-sources=yes"

Надеюсь, это поможет вам.

Ответ 3

Я мог бы решить проблему, отметив созданные каталоги файлов как папку "Источники". Перейдите в раздел "Файл → Структура проекта → " root "- > Источники.

Внутренняя структура проекта с настройками модуля

Ответ 4

Эти шаги работают для меня: добавьте следующие строки в файл plugins.sbt:

resolvers += "sbt-idea-repo" at "http://mpeltonen.github.com/maven/"
addSbtPlugin("com.github.mpeltonen" % "sbt-idea" % "1.2.0")
but if you don't know the correct version of sbt-idea then use this instead:
addSbtPlugin("com.github.mpeltonen" % "sbt-idea" % "latest.integration")

Предупреждение. Потребуется слишком много времени, чтобы построить, поскольку нужно разбирать все версии и получить последнюю версию.

Запустите эту команду -

sbt gen-idea

Ответ 5

Мне пришлось добавить следующую плагиновую запись в мой plugins.sbt(в папке проектов) для intellij IDEA для разрешения переменных воспроизведения, таких как маршруты и т.д.

addSbtPlugin ( "com.github.mpeltonen" % "sbt-idea" % "1.6.0" )

Примечание. После добавления приведенного выше плагина к plugins.sbt выполните приведенные ниже команды, чтобы перестроить идею и решить проблему:

  • активатор чистый
  • идея активатора

Ответ 6

В моем случае выполняется команда sbt от пользователя, у которого нет разрешения для проекта, в который вы вводите sbt. Очистите, а затем измените права доступа к папкам с помощью chown -R yourUser/path/to/project, и он должен исправить это. После этого ./sbt compile

Ответ 7

У меня была аналогичная проблема - IDEA не смог решить Play!.

В моем случае возникла проблема с папкой .idea. Я скопировал проект, чтобы отделить папку и запустить команду "активатор идеи" в скопированной корневой папке проекта. Затем я сравнил папки .idea в оригинальном проекте и скопированный проект - там я нашел разницу! В скопированном проекте в папке .idea/libraries было много XML файлов, содержащих ссылки на зависимости, поэтому я скопировал их в одну и ту же папку в оригинальный проект, переиндексированный проект, и с этого момента все работает отлично:) Я сделал это так, потому что я не хотел потерять настройки своего проекта (удаление папки .idea и запуск команды "идея активатора" в исходной папке проекта должно решить проблему, но настройки для проекта будут потеряны).

Надеюсь, это поможет как-то:).