多项目非子项目的Gradle中间目录

dal*_*ez1 2 java multi-project gradle

Gradle多项目结构

在RootProject中,我有build.gralde和settings.gradle.common,subProj1和subProj2是settings.gradle中的子项目

intermediateDir 不是子项目!它仅用于对subProj1,subProj2进行分组,因为它们是相关的.

每次我在根目录中运行"gradle eclipse"时,我也会在intermediateDir中获得.classpath和.project文件,我不应该这样做,因为这不是子项目!所以基本上middleDir被认为是某些任务的子项目,即使不在settings.gradle中也是如此.有什么快速的方法吗?

Pet*_*ser 5

你写的方式settings.gradle,中间目录一个子项目.通常这是可取的,因为它允许您一次性轻松配置和执行其子项目,即使中间项目没有自己的任何文件或任务.

要消除中间项目的不需要的行为,要么确保不将该行为(例如apply plugin: "eclipse")应用于该项目(可能您现在正在应用它allprojects),或者更改settings.gradle为不创建中间项目.例如:

include "common"   
// name it any way you like, but not 
// "intermediateDir:subProj1", i.e. no ":"
include "subProj1" 
include "subProj2"

project(":subProj1").projectDir = file("intermediateDir/subProj1")
project(":subProj2").projectDir = file("intermediateDir/subProj2")
Run Code Online (Sandbox Code Playgroud)