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

IntelliJ IDEA и Gradle - нельзя применить к '(groovy.lang.Closure)'

У меня есть файл Gradle, который, когда я загружаю его в IntelliJ IDEA 14.1.5, показывает ошибки IDE для всего файла. А именно, все ошибки выглядят либо:

ошибки java.lang.String

java.lang.String errors

или

groovy.lang.Closure errors

groovy.lang.Closure errors

Я попытался очистить содержимое файла и написать только верхнюю строку:

group 'com.me.blah'

но даже это приводит к ошибке.

Для контекста - это отдельный модуль в более крупном проекте SpringBoot. Этот модуль представляет собой набор простых статических файлов (с Gradle для компиляции CSS, статический анализ и т.д.), В то время как остальные являются модулями Java и не имеют проблем Gradle.

Кто-нибудь может подумать, почему IntelliJ будет пытаться понять этот Gradle файл?

4b9b3361

Ответ 1

Для тех, кто ищет аналогичное исправление, это сводилось к типу модуля. Мой модуль был определен в моем .iml файле как

type="WEB_MODULE"

Я создал новый модуль Gradle и вставил его в одно и то же содержимое, удалил оригинал, переименовал новый модуль с тем же именем, что и старый, и все сработало нормально. Когда я изменил результаты, единственным изменением было то, что файл .iml теперь сказал:

type="JAVA_MODULE"

Итак, вот ответ, похоже. Измените свой модуль с "web" на "java".

Ответ 2

Я часто это замечал. При создании нового проекта и использовании шаблона 'Gradle, IntelliJ, похоже, все ошибается. Так что я прибегал к тому, чтобы сделать это после создания нового проекта, удалить файлы .idea и .iml и повторно открыть проект непосредственно из файла Gradle. IntelliJ, похоже, лучше понимает, что происходит в этом случае.

Ответ 3

Для первой части вопроса: group - это свойство, поэтому должно быть присваивание, а не вызов функции. Правильный код:

group = 'com.me.blah'

Ответ 4

Я нашел это предложение в отслеживателе ошибок IDEA (IDEA-142683):

Решение:
Можно добавить комментарий, например,      //noinspection GroovyAssignabilityCheck
для подавления предупреждения, но это не обязательно, поскольку они являются стандартными каждый день Gradle обычаями.

Эта проблема была недавно обновлена ​​и отмечена как исправленная, готовая к выпуску с выпуском версии 2016.2.

Ответ 5

Попробуй файл | Недействительные кэши и перезапуск. Это сработало для меня после того, как я испортил синтаксис где-то еще в файле.

Ответ 6

Я обнаружил, что это предупреждение от Groovy инспекции Intelliji. Так что, если ваш проект не является чисто Groovy, вы можете отключить эту проверку, перейдя в Файл → Настройки → Редактор → Проверки → отключить Groovy. Опять же, просто обходной путь.

Ответ 7

Случилось недавно в окнах. Я пробовал все вышеперечисленное, но это не сработало.

Что я сделал:

1 - У меня уже была переменная среды JAVA_HOME. Таким образом, IDEA выбрала это как SDK проекта, и эти предупреждения появились.

2 - Итак, я удалил JAVA_HOME по умолчанию из SDK проекта и вручную добавил путь jdk. Перезапуск и все предупреждения исчезли.

Может быть, это поможет кому-то. Спасибо.

Ответ 8

Для меня, попробовав все эти ответы безрезультатно, смена Java SDK проекта сделала свое дело, я был на 1.8 и поменял его на самый новый, но все равно язык уровня проекта 8.

Надеюсь это поможет!