spring-boot - spring boot jar 缺少项目依赖项
问题描述
我有一个使用 Gradle 构建的 Spring Boot 项目。它对其他项目有编译依赖。所有项目都通过主项目的 settings.gradle 文件中的“includeFlat”提及。
我的问题:构建生成的引导(“胖”)jar 忽略了项目依赖项。
这是项目结构:
master
(no source)
build.gradle - applies 'Eclipse' plugin (but not Java)
settings.gradle -- has 'includeFlat' for projectA, projectB
projectA
src/main/java/...
build.gradle
projectB
src/main/java/...
build.gradle -- see below
projectB 的 build.gradle 大致如下所示:
buildscript
{
repositories
{
mavenCentral()
}
dependencies
{
classpath("org.springframework.boot:spring-boot-gradle-plugin:2.0.1.RELEASE")
}
}
apply plugin: 'java'
apply plugin: 'eclipse'
apply plugin: 'org.springframework.boot'
apply plugin: 'io.spring.dependency-management'
jar
{
baseName = 'xxx'
version = '0.1.0'
}
repositories
{
mavenCentral()
}
jar {
enabled = true
}
dependencies
{
compile project(":projectA")
}
projectB 上的“gradle build”会生成常规 jar 和引导 jar。我希望引导 jar 包含来自 ":projectA" 的类——但它们丢失了。
除此之外,无论是单独构建还是通过主项目构建,这两个项目都可以正常构建和运行。
解决方案
推荐阅读
- mysql - 如何存储旧数据,这是正确的方法吗?
- css - 子组件可以填充它的组件
- python - 如何添加到 numpy 数组的末尾并从开头删除?
- android - How to customize Cast Dialog in the Google Cast Framework for Android
- regex - 如何匹配两个 .csv 文件并写入第三个文件,将文件 2 中的数据替换为文件 1 中的数据
- julia - 我们如何在 Julia 中上课?
- scala - 如何从案例类值中获取类类型
- ios - 如何跟踪内存中地址的值?
- javascript - XMP 对象需要 setProperty 语法
- apache-spark - 在 printschema 输出上创建数据框