Я хочу поиграть с Grails 4, проделав большую работу с Grails 2.2.x (я думаю, что мне нужно обновить вещи). Когда я пытаюсь использовать Grails 4.0.2 с IntelliJ IDEA 2017.2.3, я получаю refre sh error Error:No such property: GradleVersion for class: JetGradlePlugin
, который, как подсказывает немного Googling, может быть решен путем понижения версии Gradle до более ранней (с версии по умолчанию 5 ). Поэтому я установил Gradle 4.10.2 и использовал его с $ GRAILS_GRADLE_HOME=C:/shared/gradle-4.10.2 grails
. Вызов gradle help
показывает, что на самом деле используется 4.10.2.
Итак, теперь я пытаюсь создать приложение create и получаю эту ошибку:
......................
|Application created at C:\Shared\projects\dummy
|Initializing application. Please wait...
|Resolving Dependencies. Please wait...
> Configure project :
Cannot resolve reloading agent JAR: Failed to resolve imported Maven boms: Canno
t resolve external dependency org.springframework.boot:spring-boot-dependencies:
2.1.9.RELEASE because no repositories are defined.
Required by:
project :
Project evaluation failed including an error in afterEvaluate {}. Run with --sta
cktrace for details of the afterEvaluate {} error.
FAILURE: Build failed with an exception.
* Where:
Build file 'C:\Shared\projects\dummy\build.gradle' line: 19
* What went wrong:
A problem occurred evaluating root project 'dummy'.
> org.codehaus.groovy.runtime.DefaultGroovyMethods.each([Ljava/lang/Object;Lgroo
vy/lang/Closure;)[Ljava/lang/Object;
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug
option to get more log output. Run with --scan to get full insights.
* Get more help at https://help.gradle.org
CONFIGURE FAILED in 21s
Error |
Error initializing classpath: org.codehaus.groovy.runtime.DefaultGroovyMethods.e
ach([Ljava/lang/Object;Lgroovy/lang/Closure;)[Ljava/lang/Object; (Use --stacktra
ce to see the full trace)
Использование --stacktrace опция дает мне дополнительную информацию:
Error initializing classpath: org.codehaus.groovy.runtime.DefaultGroovyMethods.each([Ljava/lang/Objec
t;Lgroovy/lang/Closure;)[Ljava/lang/Object; (NOTE: Stack trace has been filtered. Use --verbose to se
e entire trace.)
java.lang.NoSuchMethodError: org.codehaus.groovy.runtime.DefaultGroovyMethods.each([Ljava/lang/Object
;Lgroovy/lang/Closure;)[Ljava/lang/Object;
at org.grails.gradle.plugin.core.GrailsGradlePlugin.buildClasspath(GrailsGradlePlugin.groovy:
608)
at org.grails.gradle.plugin.web.GrailsWebGradlePlugin.apply(GrailsWebGradlePlugin.groovy:50)
at org.grails.gradle.plugin.web.GrailsWebGradlePlugin.apply(GrailsWebGradlePlugin.groovy)
at org.gradle.api.internal.plugins.ImperativeOnlyPluginTarget.applyImperative(ImperativeOnlyP
luginTarget.java:42)
etc.
Итак, ключевым моментом является следующее: java.lang.NoSuchMethodError: org.codehaus.groovy.runtime.DefaultGroovyMethods.each([Ljava/lang/Object
;Lgroovy/lang/Closure;)[Ljava/lang/Object;
Строка в build.gradle, 19, где возникает проблема, это :
apply plugin:"org.grails.grails-web"
Не уверен, где go отсюда. Если это не разрешится само собой, я обновлю IntelliJ в надежде, что это решит проблему, но я бы предпочел сделать это с помощью возможного подхода к версии Gradle.