配置:
MacOS Ventura,13.5
JDK:Liberica JDK 11和/或Liberica JDK 17
系统Gradle:Gradle 8.2.1
Grails:Grails版本:6.0.0
问题:
我能跑
$> grails create-app foobar
创建一个新的、空的Grails应用程序。这部分工作正常。
然后,我可以cd到'foobar'目录并运行
$> ./gradlew clean build
在使用上面提到的JDK 11时,我遇到了以下错误:
FAILURE: Build failed with an exception.
* What went wrong:
Could not determine the dependencies of task ':integrationTest'.
> Could not create task ':mergeTestReports'.
> 'org.gradle.api.file.DirectoryProperty org.gradle.api.tasks.testing.TestReport.getDestinationDirectory()'
如果我尝试用Gradle系统构建:
$> gradle clean build
我得到了这个(再次使用JDK 11):
> Configure project :
Cannot resolve reloading agent JAR: Failed to resolve imported Maven boms: Cannot resolve external dependency org.springframework.boot:spring-boot-dependencies:2.7.12 because no repositories are defined.
Required by:
project :
FAILURE: Build completed with 2 failures.
1: Task failed with an exception.
-----------
* Where:
Build file '/Users/prhodes1/development/experimental/grails/foobar/build.gradle' line: 22
* What went wrong:
A problem occurred evaluating root project 'foobar'.
> Failed to apply plugin 'org.grails.grails-gsp'.
> Could not create task ':compileGroovyPages'.
> Could not create task of type 'GroovyPageForkCompileTask'.
> java.lang.InstantiationException (no error message)
* 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.
==============================================================================
2: Task failed with an exception.
-----------
* What went wrong:
A problem occurred configuring root project 'foobar'.
> Could not resolve all files for configuration ':runtimeClasspath'.
> Cannot resolve external dependency io.micronaut:micronaut-inject-groovy:3.9.3 because no repositories are defined.
Required by:
project :
如果我尝试使用JDK 17,使用Gradle Package 器,我会得到几乎相同的错误:
FAILURE: Build failed with an exception.
* What went wrong:
Could not determine the dependencies of task ':integrationTest'.
> Could not create task ':mergeTestReports'.
> 'org.gradle.api.file.DirectoryProperty org.gradle.api.tasks.testing.TestReport.getDestinationDirectory()'
* 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.
对于JDK 17和系统Gradle的组合也是如此:
> Configure project :
Cannot resolve reloading agent JAR: Failed to resolve imported Maven boms: Cannot resolve external dependency org.springframework.boot:spring-boot-dependencies:2.7.12 because no repositories are defined.
Required by:
project :
FAILURE: Build completed with 2 failures.
1: Task failed with an exception.
-----------
* Where:
Build file '/Users/prhodes1/development/experimental/grails/foobar/build.gradle' line: 22
* What went wrong:
A problem occurred evaluating root project 'foobar'.
> Failed to apply plugin 'org.grails.grails-gsp'.
> Could not create task ':compileGroovyPages'.
> Could not create task of type 'GroovyPageForkCompileTask'.
> java.lang.InstantiationException (no error message)
* 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.
==============================================================================
2: Task failed with an exception.
-----------
* What went wrong:
A problem occurred configuring root project 'foobar'.
> Could not resolve all files for configuration ':runtimeClasspath'.
> Cannot resolve external dependency io.micronaut:micronaut-inject-groovy:3.9.3 because no repositories are defined.
Required by:
project :
此外,仅供参考,grailscreate-app命令创建的Gradle Package 器适用于版本7.2
C02FK2T0ML85:foobar prhodes1$ ./gradlew --version
------------------------------------------------------------
Gradle 7.2
------------------------------------------------------------
Build time: 2021-08-17 09:59:03 UTC
Revision: a773786b58bb28710e3dc96c4d1a7063628952ad
Kotlin: 1.5.21
Groovy: 3.0.8
Ant: Apache Ant(TM) version 1.10.9 compiled on September 27 2020
JVM: 17.0.6 (BellSoft 17.0.6+10-LTS)
OS: Mac OS X 13.5 x86_64
所以基本上我被困住了。我无法让生成的Grails项目使用JDK 11(根据文档,这是Grails 6的最低要求)或JDK 17构建,使用生成的 Package 器或最近的Gradle的系统安装。如果有人对如何解决这个问题并构建Grails应用程序有任何想法,我将非常感谢您的见解。
1条答案
按热度按时间utugiqy61#
已尝试使用您提供的相同命令,但我没有得到您看到的问题。说到这里,刚刚遇到了类似的问题:Unable to run integration tests when upgrading grails from version 5 to 6 - Could not determine the dependencies of task ':integrationTest'
而且看起来它也与Gradle版本有关。确保你的“buildSrc”文件夹有gradle版本7.6.2。
还要确保gradle/wrapper/gradle-wrapper.properties文件中有这一行
对我来说,从新鲜的grails 6应用程序中再次替换“buildSrc”文件夹工作了。