首页 > 解决方案 > 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" 的类——但它们丢失了。

除此之外,无论是单独构建还是通过主项目构建,这两个项目都可以正常构建和运行。

标签: spring-bootgradledependencies

解决方案


推荐阅读