Gradle 多项目在根项目中定义依赖项
Posted
技术标签:
【中文标题】Gradle 多项目在根项目中定义依赖项【英文标题】:Gradle multiproject define dependency on root project 【发布时间】:2013-11-20 06:45:01 【问题描述】:我有一个多项目 gradle 构建,以这种方式配置:
root
|
|---- projectA
|
|---- projectB
我想在root/build.gradle
中声明所有嵌套项目的依赖项,这是文件:
subprojects
version = '1.0-SNAPSHOT'
repositories
mavenLocal()
mavenCentral()
maven
url 'https://repository.jboss.org/nexus/content/groups/public-jboss/'
allprojects
dependencies
compile 'org.projectlombok:lombok:1.12.2'
但是当我执行构建时,我有:
* What went wrong:
评估根项目“代码”时出现问题。
No signature of method:
org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler.compile() is applicable for argument types: (java.lang.String) values: [org.projectlombok:lombok:1.12.2]
可能的解决方案:模块(java.lang.Object)
我做错了什么?
【问题讨论】:
【参考方案1】:compile
方法是您一直在使用的插件的一部分 (reference)。
allprojects
apply plugin: 'java'
//so that we can use 'compile', 'testCompile' for dependencies
dependencies
implementation 'org.projectlombok:lombok:1.12.2'
【讨论】:
通常你需要subprojects
,而不是allprojects
。
'java'插件已应用,但与安卓插件不兼容。【参考方案2】:
如果你得到'java'插件已被应用,但它与Android插件不兼容错误,试试这个
subprojects
afterEvaluate
dependencies
implementation "YOUR DEPENDENCIES"
【讨论】:
以上是关于Gradle 多项目在根项目中定义依赖项的主要内容,如果未能解决你的问题,请参考以下文章
gradle多项目构建添加logback日志功能以及相关配置
项目构建失败:任务“compileDebug”在根项目中不明确