IntelliJ从根项目执行gradle测试

时间:2016-01-15 16:11:21

标签: java testing intellij-idea gradle

我在IntelliJ中有一个gradle multiproject importend,我想要执行一些测试类。

结构如下:

root
|-module-a
|-module-b

module-a 取决于 module-b ,因此在 build.gradle

dependencies {
    compile project('module-b');
}

当我从shell使用gradle时,一切正常,我必须进入 root 项目目录并写下:

./gradlew :module-a:test

一切都经过测试。

当我从IntelliJ点击“运行'测试'在'module-a'中”时出现此错误:

A problem occurred evaluating root project 'module-a'.
> Project with path ':module-b' could not be found in root project ':module-a'.

看来,IntelliJ正在执行来自 module-a 的gradle命令,而不是来自 root (这应该是gradle想要的正确行为)。

如何在IntelliJ中执行此测试?我需要配置什么?

1 个答案:

答案 0 :(得分:2)

对于看起来像这样的多项目结构

root
|-module-a
|-module-b

根文件夹中只有一个settings.gradle,其内容为:

include 'module-a', 'module-b'

子项目文件夹不包含settings.gradle文件。然后你将兄弟项目称为:

project(':module-b')

因此您的依赖关系将被声明为:

dependencies {
  compile project(':module-b');
}

请提供https://docs.python.org/3/c-api/number.html以获取有关多项目结构的更多信息。