升级到 gradle 6.6.1(也是 gralde 5)时,bootRepackage 分类器不起作用
bootRepackage classifier is not working when upgrade to gradle 6.6.1 (also gralde 5)
我们的项目在 gradle 4.10.2(Spring 引导 1.5.22)中仍然运行良好,但是当我将 gradle 升级到 6.6.1 时它抛出了异常
org.gradle.api.ProjectConfigurationException: A problem occurred configuring project ':my-app'.
Caused by: org.gradle.internal.event.ListenerNotificationException: Failed to notify project evaluation listener
Caused by: java.lang.NoSuchMethodError: org.gradle.api.tasks.TaskInputs.file(Ljava/lang/Object;)Lorg/gradle/api/tasks/TaskInputs;
at org.springframework.boot.gradle.repackage.RepackagePluginFeatures$RegisterInputsOutputsAction.setupInputOutputs(RepackagePluginFeatures.java:150)
at org.springframework.boot.gradle.repackage.RepackagePluginFeatures$RegisterInputsOutputsAction.execute(RepackagePluginFeatures.java:136)
我已经试过了 gradle 5 它仍然发生了。
这是我的 gradle.build bootRepackage 部分,当我删除 classifier = "boot" 时,它在没有分类器功能的情况下工作
bootRepackage {
enabled = true
classifier = "boot"
doLast{
//some tasks
}
}
为什么会这样?
Gradle 5 删除了 Spring Boot 1.5 的 Gradle 插件需要的方法。 Spring Boot 1.5 supports Gradle 2.x or 3.x 所以它不适用于 Gradle 5.
也就不足为奇了
如果您想使用更新版本的 Gradle,您还必须升级到更新版本的 Spring Boot。在撰写本文时,2.3.x 是最老的 Spring 引导版本,但仍受支持。
我们的项目在 gradle 4.10.2(Spring 引导 1.5.22)中仍然运行良好,但是当我将 gradle 升级到 6.6.1 时它抛出了异常
org.gradle.api.ProjectConfigurationException: A problem occurred configuring project ':my-app'.
Caused by: org.gradle.internal.event.ListenerNotificationException: Failed to notify project evaluation listener
Caused by: java.lang.NoSuchMethodError: org.gradle.api.tasks.TaskInputs.file(Ljava/lang/Object;)Lorg/gradle/api/tasks/TaskInputs;
at org.springframework.boot.gradle.repackage.RepackagePluginFeatures$RegisterInputsOutputsAction.setupInputOutputs(RepackagePluginFeatures.java:150)
at org.springframework.boot.gradle.repackage.RepackagePluginFeatures$RegisterInputsOutputsAction.execute(RepackagePluginFeatures.java:136)
我已经试过了 gradle 5 它仍然发生了。
这是我的 gradle.build bootRepackage 部分,当我删除 classifier = "boot" 时,它在没有分类器功能的情况下工作
bootRepackage {
enabled = true
classifier = "boot"
doLast{
//some tasks
}
}
为什么会这样?
Gradle 5 删除了 Spring Boot 1.5 的 Gradle 插件需要的方法。 Spring Boot 1.5 supports Gradle 2.x or 3.x 所以它不适用于 Gradle 5.
也就不足为奇了如果您想使用更新版本的 Gradle,您还必须升级到更新版本的 Spring Boot。在撰写本文时,2.3.x 是最老的 Spring 引导版本,但仍受支持。