在根项目'mymodule'中找不到项目'mymodule'

时间:2017-08-14 17:20:36

标签: java gradle build.gradle

我配置了一个gradle项目,以便在我运行./gradlew build时构建子模块并且它完美无瑕。但当我移动到子目录并运行像./gradlew :mymodule:build这样的子模块时,我收到了错误

Project 'mymodule' not found in root project 'mymodule'.

我的成绩根配置:

group 'com.example.core'
version '1.0-SNAPSHOT'

allprojects {
    apply plugin: 'java'

    version = '1.0'
}

subprojects {
    repositories {
        mavenLocal()
    }

    dependencyManagement {
        imports {
            mavenBom "org.springframework.boot:spring-boot-dependencies:${spring_boot_version}"
        }
    }

    dependencies {
        compile 'org.springframework.boot:spring-boot-starter-web'
    }
}

project(':mymodule1') {
    apply plugin: 'application'

    bootRepackage {
        mainClass = 'com.example.App'
    }

    springBoot {
        mainClass = 'com.example.App'
        executable = true
        buildInfo()
    }

    bootRun {
        addResources = false
    }

    task stage(dependsOn: 'bootRepackage') {
    }

    dependencies {
        compile project(':mymodule2')
    }

}

project(':mymodule2') {
    apply plugin: 'application'
    // config module
}

sourceCompatibility = 1.8
targetCompatibility = 1.8

buildscript {
    repositories {
        // repos
    }
    dependencies {
        // deps
    }
}


defaultTasks 'bootRun'

repositories {
    mavenCentral()
}

clean {
    delete "target"
}

task cleanResources(type: Delete) {
    delete 'build/resources'
}

task wrapper(type: Wrapper) {
    gradleVersion = '4.0'
}

bootRepackage.enabled = false

我在子模块中的模块配置几乎为空:

group 'com.example.proj'
version '1.0-SNAPSHOT'

我建议原因是缺少子模块的运行配置。那么问题是如何指出子模块build.gralde使用父配置?

2 个答案:

答案 0 :(得分:0)

无需进入子目录,juste从根目录运行./gradlew :mymodule:build

:mymodule前缀已指示您要为目标子项目运行指定的任务(此处为build)(此处为mymodule

答案 1 :(得分:0)

我发现了这个问题。

问题在于IntelliJ IDEA中项目的错误自动配置。

它配置如下:

Alt text

但这需要这个

Alt text