Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/spring-boot/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Spring boot 如何配置';mainClassName';对于Kotlin Gradle多模块项目中的Spring Boot应用程序?_Spring Boot_Kotlin_Gradle - Fatal编程技术网

Spring boot 如何配置';mainClassName';对于Kotlin Gradle多模块项目中的Spring Boot应用程序?

Spring boot 如何配置';mainClassName';对于Kotlin Gradle多模块项目中的Spring Boot应用程序?,spring-boot,kotlin,gradle,Spring Boot,Kotlin,Gradle,我在一些模块中使用了Spring引导 我在项目的根build.gradle中使用'org.springframework.boot'和'io.spring.dependency management'插件,除了提供bootRun任务之外,它还提供了 好的,我需要如下配置mainClassName(或入口点): springBoot { mainClassName = 'de.shinythings.hexagon.HexagonApplicationKt' } 虽然这在包含实际Spri

我在一些模块中使用了Spring引导

我在项目的根
build.gradle
中使用
'org.springframework.boot'
'io.spring.dependency management'
插件,除了提供
bootRun
任务之外,它还提供了

好的,我需要如下配置
mainClassName
(或入口点):

springBoot {
    mainClassName = 'de.shinythings.hexagon.HexagonApplicationKt'
}
虽然这在包含实际Spring启动应用程序的子项目中起作用,但在根项目中不起作用

我希望能够在根项目中配置它,因为我希望能够使用
/gradlew bootRun
而不是
/gradlew配置:bootRun
运行我的项目

其他任务,如
/gradlew build
/gradlew test
工作正常

下面是根项目的
build.gradle
():

在子项目/模块中,此设置起作用():

要配置
mainClassName
根目录的项目
build.gradle
,我必须做什么

plugins {
    id 'org.jetbrains.kotlin.jvm' version '1.4.10'
    id 'org.springframework.boot' version '2.3.4.RELEASE'
    id 'io.spring.dependency-management' version '1.0.10.RELEASE'
}

repositories {
    mavenCentral()
}

dependencies {
    implementation project(':configuration')
}

springBoot {
    mainClassName = 'de.shinythings.hexagon.HexagonApplicationKt'
}

subprojects {
    group = 'de.shinythings.hexagon'
    version = '0.0.1-SNAPSHOT'

    repositories {
        mavenCentral()
    }

    ext {
        mockKVersion = '1.10.2'
    }

    apply plugin: 'org.jetbrains.kotlin.jvm'
    apply plugin: 'io.spring.dependency-management'

    dependencies {
        implementation("org.jetbrains.kotlin:kotlin-reflect")
        implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk8")
    }

    dependencyManagement {
        imports {
            mavenBom('org.springframework.boot:spring-boot-dependencies:2.3.4.RELEASE')
        }
    }

    compileKotlin {
        kotlinOptions {
            jvmTarget = JavaVersion.VERSION_1_8
            freeCompilerArgs = ["-Xjsr305=strict"]
            allWarningsAsErrors = true
        }
    }

    compileTestKotlin {
        kotlinOptions {
            jvmTarget = JavaVersion.VERSION_1_8
            freeCompilerArgs = ["-Xjsr305=strict"]
            allWarningsAsErrors = true
        }
    }
}

plugins {
    id 'org.springframework.boot'
    id 'org.jetbrains.kotlin.plugin.spring' version '1.4.10'
}

dependencies {
    implementation project(':common')
    implementation project(':application')
    implementation project(':adapters:persistence')
    implementation project(':adapters:web')

    implementation 'org.springframework.boot:spring-boot-starter'

    implementation('com.h2database:h2')
}

springBoot {
    mainClassName = 'de.shinythings.hexagon.HexagonApplicationKt'
}