IDEA在树中显示两次项目

时间:2016-03-22 13:53:30

标签: intellij-idea gradle kotlin

我和Gradle有一个Kotlin项目有两个孩子。每当我尝试在IDEA中打开它时,其中一个孩子会在树上出现两次。

Screenshot

在树中,您可以看到顶层的两个项目,grpc和grp。问题是grpc(来自顶层)与grpc是同一个项目是grp的孩子。

以下是我的Gradle构建文件:

父gradle.build:

buildscript {
    ext.kotlin_version = '1.0.1'
    repositories {
        jcenter()
        mavenCentral()
    }
    dependencies {
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
    }
}

allprojects {
    repositories {
        jcenter()
        mavenCentral()
    }
} 

gradle.settings文件:

include ':grpstd', ':grpc'

grpc gradle.build:

apply plugin: 'antlr'
apply plugin: 'application'
apply plugin: 'kotlin'

mainClassName = 'sron.grpc.MainKt'

compileKotlin.dependsOn generateGrammarSource

generateGrammarSource {
    arguments += ['-package', 'sron.grpc.compiler.internal']
}

dependencies {
    antlr 'org.antlr:antlr4:4.5.2-1'

    compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
    compile 'commons-cli:commons-cli:1.3.1'
    compile 'org.ow2.asm:asm:5.0.4'
    compile project(':grpstd')

    testCompile 'junit:junit:4.12'
    testCompile "org.jetbrains.kotlin:kotlin-test:$kotlin_version"
}

grpstd gradle.build:

apply plugin: 'kotlin'

dependencies {
    compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"

    testCompile 'junit:junit:4.12'
    testCompile "org.jetbrains.kotlin:kotlin-test:$kotlin_version"
}

为什么该项目会被展示两次?我该如何预防呢?

2 个答案:

答案 0 :(得分:0)

打开project structure对话框(您可以使用Ctrl+Alt+Shift+S),转到Modules部分,检查是否在那里定义了重复模块。 如果有,请删除不必要的。

答案 1 :(得分:0)

导入Gradle模块时,您可能希望尝试禁用为每个源集创建单独的模块选项。

import wizard

所以,完整的步骤是:

  1. 打开模块enter image description here
  2. 移除gradle模块
  3. 重新导入模块。在导入向导的第二页确保禁用该选项:为每个源集创建单独的模块