我想做这样的事情:
dependencies {
compile project(':projectA', classifier: 'sources')
}
但是我无法找到这样的功能,我在文档中搜索过,但除了在真正的依赖项上指定分类器之外什么也没有。
那么有一种方法可以将Gradle multimodules项目中父项目的源添加为依赖项吗?
答案 0 :(得分:0)
我不知道Gradle有一个功能,但有一个解决方法:
将packageSources
添加到应提供来源的项目
// projectA/build.gradle
project.task("packageSources", type: Jar) {
classifier = 'sources'
from { project.sourceSets.main.allSource }
}
依赖compileJava
您需要资源的任务
// projectB/build.gradle
compileJava.dependsOn tasks.getByPath(':projectA:packageSources')
将源添加为依赖项
// projectB/build.gradle
dependencies {
compile files(tasks.getByPath(':projectA:packageSources').archivePath)
}
答案 1 :(得分:0)
了projectA /的build.gradle
configurations {
sources
}
dependencies {
sources sourceSets.main.allSource
}
项目B /的build.gradle
dependencies {
compile project(path: ':projectA', configuration: 'sources')
}