Java gradle未能应用插件[id';org.springframework.boot';]
我正在尝试运行SpringBoot项目。我和格雷德尔有些问题 gradle构建工作正常,但我无法运行gradlew 无法运行命令:Java gradle未能应用插件[id';org.springframework.boot';],java,spring-boot,ubuntu,gradle,Java,Spring Boot,Ubuntu,Gradle,我正在尝试运行SpringBoot项目。我和格雷德尔有些问题 gradle构建工作正常,但我无法运行gradlew 无法运行命令: /gradlew-build&&java-jar-build/libs/gs-spring-boot-docker-0.1.0.jar 以下是错误: Failed to apply plugin [id 'org.springframework.boot'] Spring Boot plugin requires Gradle 4.10 or later. The
/gradlew-build&&java-jar-build/libs/gs-spring-boot-docker-0.1.0.jar
以下是错误:
Failed to apply plugin [id 'org.springframework.boot']
Spring Boot plugin requires Gradle 4.10 or later. The current version is Gradle 4.9
我的gradle版本6.0
我的gradle文件
buildscript {
repositories {
maven {
url "https://plugins.gradle.org/m2/"
}
mavenCentral()
}
dependencies {
classpath("org.springframework.boot:spring-boot-gradle-plugin:2.2.4.RELEASE")
classpath('com.google.cloud.tools.jib:com.google.cloud.tools.jib.gradle.plugin:1.8.0')
}
}
apply plugin: 'java'
apply plugin: 'eclipse'
apply plugin: 'idea'
apply plugin: 'org.springframework.boot'
apply plugin: 'io.spring.dependency-management'
apply plugin: 'com.google.cloud.tools.jib'
bootJar {
baseName = 'gs-spring-boot-docker'
version = '0.1.0'
}
repositories {
mavenCentral()
}
sourceCompatibility = 1.8
targetCompatibility = 1.8
dependencies {
compile("org.springframework.boot:spring-boot-starter-web")
implementation('org.springframework.boot:spring-boot-starter-data-jpa')
implementation('org.springframework.boot:spring-boot-starter-web')
implementation('org.postgresql:postgresql')
testCompile("org.springframework.boot:spring-boot-starter-test")
}
gradle构建工作正常,没有错误 Gradle包装的全部要点是在项目中使用Gradle的固定版本。这可以确保您不会意外地使用项目支持的不兼容版本。另一个好处是,如果您还没有正确的版本,它会自动下载 当您键入
gradle
(不带“w”)时,您正在调用放置在路径上的手动下载的发行版。这将完全跳过包装器部分。在您的情况下,您显然下载了版本6并更新了项目以使用该版本
但是,您还没有更新包装器脚本,这是您应该做的。如果查看gradle/wrapper/gradle wrapper.properties
,您应该会看到它被设置为4.9,这与您的项目不再兼容
要更新它,需要运行以下命令两次:
gradlew包装器--gradle版本6.1.1--分发类型all
(假设您想要的是6.1.1版本,这是本文撰写时的最新版本。)
第一次运行它时,它基本上只需更改gradle wrapper.properties
中的版本(例如,更改为6.1.1)。如果由于包装器与项目相比太旧而失败,只需使用文本编辑器手动更改文件即可
第二次运行时,Gradle将使用该新版本(例如6.1.1)启动,如果需要,还将更新包装器脚本本身
另外,如果您想在开发过程中启动Spring Boot应用程序,只需运行gradlew bootRun
。无需构建jar并手动调用java
此外,在依赖项中使用
实现
,而不是编译
。前者已被弃用(包括testCompile
)。项目是否使用gradle包装器?如果是这样的话:是不是gradle包装器使用了gradle版本4.9?@Turing85我不知道如何检查它。我尝试了$gradle wrapper--version
它在项目的根目录中显示gradle 6Go,执行/gradlew--version
(或者在Windows上执行gradlew.bat--version
)。