在 RootProject 中,我有 build.gralde 和 settings.gradle。 common,subProj1和subProj2是settings.gradle中的子项目
intermediateDir 不是一个子项目!它仅用于对 subProj1、subProj2 进行分组,因为它们是相关的。
每次我在根目录中运行“gradle eclipse”时,我也会在 intermediateDir 中得到 .classpath 和 .project 文件,我不应该这样,因为这不是一个子项目!所以基本上 intermediateDir 被认为是某些任务的子项目,即使不在 settings.gradle 中也是如此。有什么快速解决方法吗?
最佳答案
按照您编写 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")
关于java - 多项目的 Gradle 中间目录不是子项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21015353/