Как импортировать существующий проект Grails 3 (3.0.12) в IntelliJ 15

На веб-сайте IntelliJ есть документация по созданию нового проекта Grails, но импорт проекта более схематичен, и я не могу заставить его работать на меня.

Если я скажу IntelliJ импортировать новый проект и укажу его в каталог моего проекта, он не распознает его как проект Grails. После импорта проекта я могу перейти в меню «Проект», щелкнуть проект правой кнопкой мыши, перейти к пункту «Добавить поддержку Framework...» и выбрать Groovy, но IntelliJ по-прежнему не распознает мой проект как проект Grails. Например, в новом проекте Grails меню запуска будет содержать кнопку для запуска приложения, которая будет украшена значком с тремя чашками, синонимом Grails. Я не понимаю этого с моим импортированным проектом.

Вот точные шаги, которые я предпринимаю до сих пор:

  1. Начните с моего свежего неимпортированного проекта. Это проект, и я могу собрать его вручную, используя компиляцию Grails.
  2. Откройте IntelliJ 15 UE и выберите «Импортировать проект».
  3. Выберите каталог верхнего уровня, содержащий мой файл build.gradle и каталог grails-app.
  4. Выберите Создать проект из существующих источников.
  5. Имя/местоположение проекта по умолчанию
  6. Select all source directories that were found. These include:
    1. grails-app conf, controllers, domain, init, taglib directories
    2. src/основной/отличный
    3. тест/единица
  7. На экране Библиотеки выберите параметр gradle-wrapper по умолчанию.
  8. На экране Модули выберите 3
  9. «Выберите проект SDK...» Я выбираю свою установку 1.8 JDK. Здесь нет упоминания о Grails.
  10. Я вижу сообщение "Нет фреймворков". Могу ли я настроить Grails здесь?
  11. Выберите отделку.

В этот момент я нахожусь в окне редактора IntelliJ с проектом, который не собирается. Я могу перейти к разделу «Добавить поддержку платформ» и включить поддержку Groovy, а затем сослаться на мой Grails SDK. Но в любом случае я чувствую, что не должен этого делать. Я думаю, что IntelliJ должен уметь определять тип и характеристики моего проекта, и что я просто неправильно его настраиваю.

Но несмотря на это, мой проект по-прежнему не компилируется внутри IntelliJ. Я должен построить его через консоль. Прямо сейчас ни один из моих файлов Java, расположенных в src/main/groovy compile. Все импорты, ссылающиеся на org.springframework, возвращаются с ошибкой «не удается разрешить символ».


person IcedDante    schedule 24.01.2016    source источник
comment
Да, я все это пробовал вчера, мой комментарий ниже, но это не помогло. Это произошло на моем компьютере после обновления до 3.0.12. Но на моем макбуке это произошло после обновления до 3.0.11. Нет Intellisense сейчас на обоих.   -  person Alex Shwarc    schedule 25.01.2016


Ответы (1)


У меня была эта проблема и раньше. Единственный способ обойти это:

  • Сдуть проект Intellij
  • Импорт из существующих источников
  • Дважды щелкните файл build.gradle.
  • Убедитесь, что для автоматического импорта в gradle установлено значение false

Вот проблема, связанная с IntelliJ: https://youtrack.jetbrains.com/issue/IDEA-149513

person erichelgeson    schedule 24.01.2016
comment
После этого вы получите проект Gradle, а не Grails. После того, как вы перейдете к некоторым отличным файлам, IDEA спросит о классных библиотеках, и это все. Теперь у меня есть проект gradle, все работает нормально, но нет навигации по коду внутри библиотек Grails, я потратил час, пытаясь добавить библиотеки вручную, поддержку фреймворка и SDK, но это не помогает. Невозможно добавить в проект поддержку Grails. С другой стороны, если я создаю новый проект Grails, тогда выделяются такие методы, как domainClass.save(), но все библиотеки через gradle отсутствуют. - person Alex Shwarc; 25.01.2016
comment
Поэтому мне нужно сделать обновление через вкладку gradle и включить их в проект, но добавить, что все становится наоборот - все библиотеки в порядке, но нет кода Grails Intellisense. - person Alex Shwarc; 25.01.2016
comment
Исправление Эриха было достаточно хорошим, чтобы я мог построить и запустить свой проект, но все еще есть несоответствия. Когда я захожу в меню запуска, я вижу задачу запуска Grails, но по какой-то причине я не могу выполнить для нее отладку. Итог: реализация Grails 3 в IntelliJ все еще отсутствует. Надеюсь, мы услышим от представителя JetBrains объяснение статуса этого - person IcedDante; 25.01.2016
comment
Я потратил много дней, но мне удалось запустить интеграционные тесты с отладкой. - person Alex Shwarc; 26.01.2016
comment
Для отладки используйте gradle. Запустите задачу запуска из панели градиента. После этого он будет добавлен в меню запуска. Для интеграционного теста щелкните правой кнопкой мыши тестовый файл и выберите «Создать testName». - person Alex Shwarc; 26.01.2016
comment
Я сделал, как сказал erichelgeson, но у меня все еще нет Intellisense. Когда я импортирую проект, есть возможность создать проект из существующих источников и импортировать проект из внешней модели и множество дополнительных параметров. Я пробовал все... - person Alex Shwarc; 26.01.2016
comment
Я получаю это intellisense в grails с помощью этого (GORM и т. д.), а также я просто использую задачу оценки bootRun для отладки и запуска. - person erichelgeson; 27.01.2016
comment
Я также могу запустить отладку, но по-прежнему не могу получить поддержку IDE и Intellisense. Но до 3.0.12 у меня было. У некоторых людей такая же проблема. - person Alex Shwarc; 02.02.2016