关闭。这个问题需要details or clarity .它目前不接受答案。
想改进这个问题?通过 editing this post 添加详细信息并澄清问题.
7年前关闭。
Improve this question
我有这样结构的项目:
┌project
│
├── build.gradle
├── module 1
│ │
│ ├── build.gradle
│ ├── module 1.1
│ └── module 1.2
│
└── module 2
│
├── build.gradle
├── module 2.1
└── module 2.2
我的问题是我为项目、模块 1 和模块 2 创建了构建。但我不需要它们,我只需要从模块 1.1、1.2、2.1 和 2.2 构建。
在子模块 build.gradle 中:
project(":modules 1") {
ext.buildables = [
project(':modules-1:modules.1.1'),
project(':modules-1:modules.1.2')]
}
project(":modules-1:modules.1.1") {
dependencies {
...
}
}
在根 build.gradle 中:
subprojects {
apply plugin: 'java'
sourceCompatibility = 1.6
targetCompatibility = 1.6
}
对此有什么想法吗?
编辑:
运行 gradle build 后,目录结构如下:
┌project
│
├── build.gradle
├── build (not wanted)
├── module 1
│ │
│ ├── build (not wanted)
│ ├── build.gradle
│ ├── module 1.1
| | |
│ | └── build
│ └── module 1.2
| |
│ └── build
│
└── module 2
│
├── build (not wanted)
├── build.gradle
├── module 2.1
| |
| └── build
└── module 2.2
|
└── build
如何摆脱这些不想要的文件夹,它们里面都有大小为 1kb 的 jars。
最佳答案
感谢@Opal 提供this discussion 的链接.
将以下内容添加到 allprojects
,它会跳过空 jar 。
jar {
onlyIf { !sourceSets.main.allSource.files.isEmpty() }
}
关于java - Gradle - 不要在多模块项目中创建父构建,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25441702/