Gradle运行多个有条件的spring项目

tcomlyy6  于 2023-04-06  发布在  Spring
关注(0)|答案(1)|浏览(160)

我有多个项目使用spring和spring Boot 。
Sping Boot 有命令来使用Gradle运行应用程序:

gradle bootRun

我可以用命令运行所有的应用程序:

gradle bootRun --parallel

但我需要我的一个项目(让我们称之为项目A)首先开始,只有在它(项目A)开始后,其他项目也可以开始。
问题是,我不明白我怎么能启动项目A,然后等到它启动,只有在它启动其他项目之后。
如果我只是链任务,它不会工作,因为项目A继续运行,而不是把控制权还给gradle。
其中一个项目的Grdale配置:

buildscript {
    ext {
        springBootVersion = '1.5.3.RELEASE'
    }
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")
    }
}

apply plugin: 'java'
apply plugin: 'idea'
apply plugin: 'org.springframework.boot'

jar {
    group 'test one'    
}

sourceCompatibility = 1.8
targetCompatibility = 1.8

repositories {
    mavenCentral()
}

dependencies {
    compile(
            'org.springframework.boot:spring-boot-starter-data-jpa'
    )
}

主设置.gradle只包含我的项目列表:

rootProject.name = 'best-app'    
include 'project A'
include 'project B'
include 'project C'
ryevplcw

ryevplcw1#

创建一个任务,等待A完全引导并完成,然后使除A任务外的所有bootRun任务都依赖于此任务。

2023年更新:

与此同时,A现在最好改为Shared Build Service

相关问题