java - 多项目的 Gradle 中间目录不是子项目

标签 java gradle multi-project

Gradle multiproject structure

在 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/

相关文章:

java - Android Webview 不适用于 Android 4.4

java - Jersey 多部分表单数据默认值?

java - 函数式接口(interface)和递归

java - 如何使 gradle jar 附加到 list 而不是覆盖?

Gradle Wrapper - 如何为本地和 CI 构建使用不同的 distributionUrls?

Gradle 指定子项目的设置目录路径

java - 无法从 JSP 启动 .bat 文件

android - 在 com.android.build.gradle.internal.api.ApplicationVariantImpl_Decorated 上找不到属性 'packageApplication'

java - 从 java 多项目构建 Gradle rpm

dependencies - Gradle:如何从多项目脚本中的另一个项目复制文件夹?