我正在使用Intellij IDEA 2017.2.4
和Gradle 4.0.1
我有很少的Spring Boot服务。我遇到了运行它们的问题,由于缺少依赖性,它们可能会以随机方式启动时失败。
我有一个build.gradle
的父项目:
buildscript {
repositories {
mavenCentral()
maven { url "https://repo.spring.io/snapshot" }
maven { url "https://repo.spring.io/milestone" }
maven { url "https://plugins.gradle.org/m2/" }
mavenLocal()
}
dependencies {
classpath("io.spring.gradle:dependency-management-plugin:$dependencyManagementPluginVersion")
classpath("org.springframework.boot:spring-boot-gradle-plugin:$springBootVersion")
}
}
allprojects {
apply plugin: 'java'
apply plugin: 'idea'
group = '***'
version = '***'
}
subprojects {
sourceCompatibility = 1.8
targetCompatibility = 1.8
processResources {
filesMatching('**/*.yml') {
expand(project.properties)
}
}
apply plugin: 'io.spring.dependency-management'
dependencyManagement {
imports {
mavenBom("org.springframework.cloud:spring-cloud-dependencies:$springCloudVersion")
mavenBom("org.springframework.boot:spring-boot-dependencies:$springBootVersion")
}
dependencies {
dependency "com.google.cloud:google-cloud-storage:$googleCloudStorageVersion"
...
dependency "org.junit.jupiter:junit-jupiter-api:$junitVersion"
}
}
}
一个子项目build.gradle
:
apply plugin: 'org.springframework.boot'
repositories {
mavenCentral()
maven { url "https://repo.spring.io/snapshot" }
maven { url "https://repo.spring.io/milestone" }
mavenLocal()
}
dependencies {
compile('org.springframework.boot:spring-boot-starter-data-jpa')
...
testCompile('com.h2database:h2')
}
在某些情况下,在其他lombok
依赖项中会遗漏javax
依赖项。它表明依赖关系不存在。
但是在我按下Refresh All Gradle Projects
并再次构建后,它可以正常工作。
也许有人遇到了同样的问题并且有一些解决方案吗?
答案 0 :(得分:0)
您似乎遇到lombok
依赖问题。第一步是确保将lombok添加为编译时依赖项,例如:
repositories {
mavenCentral()
}
dependencies {
compileOnly 'org.projectlombok:lombok:1.16.18'
}
第二步是确保在Intellij上安装了最新的lombok
插件。当您尝试在IDE中编译项目时,这非常重要。另一件可能有用的事情是在Intellij配置中设置自动更新依赖项。