我使用spring boot 2.在多java项目中。
我尝试构建我的主库(还没有java文件)
apply plugin: 'java-library-distribution'
plugins {
id 'org.springframework.boot' version '2.0.0.M7'
}
repositories {
mavenCentral()
maven { url "https://repo.spring.io/snapshot" }
maven { url "https://repo.spring.io/milestone" }
}
dependencies {
compile group: 'org.springframework.boot', name: 'spring-boot-starter-data-jpa', version: '2.0.0.M7'
compile group: 'org.postgresql', name: 'postgresql', version: '42.1.4'
testCompile group: 'org.springframework.boot', name: 'spring-boot-starter-test', version: '2.0.0.M7'
}
distributions {
main{
baseName = 'common-model'
}
}
sourceCompatibility = 1.8
tasks.withType(JavaCompile) {
options.compilerArgs = ["-Xlint:unchecked", "-Xlint:deprecation", "-parameters"]
}
在我的gradle / wrapper中,我有
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-4.2-bin.zip
错误我
由以下原因引起:org.gradle.api.internal.plugins.PluginApplicationException: 无法应用插件[id' org.springframework.boot']
引起:org.gradle.api.GradleException:Spring Boot插件需要 Gradle 4.0或更高版本。目前的版本是Gradle 2.13
我找不到任何2.13版本
在我的主要项目中我有
buildscript {
ext {
springBootVersion = '2.0.0.M7'
}
repositories {
mavenCentral()
maven { url "https://repo.spring.io/snapshot" }
maven { url "https://repo.spring.io/milestone" }
maven {
url "https://plugins.gradle.org/m2/"
}
}
dependencies {
classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")
}
}
apply plugin: 'application'
apply plugin: 'java'
apply plugin: 'org.springframework.boot'
apply plugin: 'io.spring.dependency-management'
mainClassName = 'com.zirgon.EmailApplication'
group = 'com.zirgon'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = 1.8
tasks.withType(JavaCompile) {
options.compilerArgs = ["-Xlint:unchecked", "-Xlint:deprecation", "-parameters"]
}
repositories {
mavenCentral()
maven { url "https://repo.spring.io/snapshot" }
maven { url "https://repo.spring.io/milestone" }
}
dependencies {
compile('org.springframework.boot:spring-boot-starter-data-jpa')
compile project(':common-model')
compile('org.springframework.boot:spring-boot-starter-mail')
compile group: 'org.postgresql', name: 'postgresql', version: '42.1.4'
testCompile('org.springframework.boot:spring-boot-starter-test')
}
答案 0 :(得分:8)
您可能在本地安装gradle而不是使用包装器构建项目,即使用gradle build
代替./gradlew build
。
答案 1 :(得分:2)
这些是我为解决同样问题所采取的步骤。
我希望这有助于某人!
我从另一个项目复制了我的gradle包装器文件夹,并编辑了./gradle/wrapper/gradle-wrapper.properties
答案 2 :(得分:0)
我正在运行Eclipse 2018-2019 / STS 4.0 / Buildship Gradle 3.0。我通过配置 Eclipse> Gradle>属性解决了这个问题。
特别是:
Eclipse> Gradle>更新Gradle项目>
Error: Spring Boot plugin requires Gradle 4.0 or later. The current version is Gradle 3.4.1
在 Eclipse>窗口>已安装的软件中,看起来一切正常,所以我检查了Windows用户配置文件目录:
Directory of C:\Users\paulsm\.gradle\wrapper\dists
06/11/2017 09:14 AM <DIR> gradle-3.3-all
12/07/2018 06:23 PM <DIR> gradle-3.4.1-bin <-- Eclipse using this version
11/01/2018 02:38 PM <DIR> gradle-4.1-all
11/01/2018 02:50 PM <DIR> gradle-4.4-all
12/07/2018 03:02 PM <DIR> gradle-4.8.1-bin
Eclipse>窗口>首选项> Gradle> Gradle分发> 从“ Gradle wrapper” =>“特定版本:4.8.1”更改
重新运行 Eclipse> Gradle>更新Gradle项目 =>成功
这有效地忽略了该项目的本地gradle包装器设置,并确保我将继续进行Eclipse项目的 ALL 的“正确*”设置。
如果需要,我可以始终根据每个项目重新配置Gradle(恢复到3.4.1或更早版本)。
答案 3 :(得分:0)
另一个选择是更改Gradle包装器属性。
错误消息:
> Failed to apply plugin [id 'org.springframework.boot']
> Spring Boot plugin requires Gradle 4.4 or later. The current version is Gradle 4.0
从以下位置更改gradle-wrapper.properties(位于/ gradle / wrapper /中)中的distributionUrl值:
distributionUrl=https\://services.gradle.org/distributions/gradle-4.0-bin.zip
到
distributionUrl=https\://services.gradle.org/distributions/gradle-5.0-bin.zip
答案 4 :(得分:0)
打开gradle / wrapper / gradle-wrapper.properties,并将distributionUrl属性更改为4.6版本或更高版本。
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-4.6-bin.zip