soc*_*qwe 32 java android gradle android-studio
是否可以在Gradle(在android studio中)指定一个依赖于当前项目边界之外的另一个gradle项目?例如,相对路径如下:
dependencies {
compile project('../../stdlib/dagger')
}
Run Code Online (Sandbox Code Playgroud)
所以我特里是这样的:
我有一个Android应用程序.结构如下所示:
我有一个包含3个子模块的gradle android库项目:
我想要的是将dagger,utils,http模块编译到MyApp项目中.
stdlib库模块正在大力开发,并随着MyApp的发展而增长.因此,每次我做一点改动时,我都不想将它们推入maven存储库.
那么有可能以某种方式链接其他gradle项目吗?我正在寻找一个临时解决方案.一旦源稳定,我会将std库推送到maven存储库.
此外,作为解决方法,可以使用sourceSet的解决方案.我还考虑在MyApp中创建一个库文件夹,它是stdlib的符号链接,但我没有按预期工作:
Run Code Online (Sandbox Code Playgroud)dependencies { compile project(':libraries:dagger') }
知道如何在gradle中解决这种依赖吗?
Mar*_*ert 83
您可以使用主项目中的"settings.gradle"文件包含外部根项目模块.它必须是一个gradle项目,并且在特定的Android构建情况下,您必须将每个模块配置为"android-library"插件项目.
例如,在"MyApp"项目设置.gradle中,您可以尝试这样做:
include 'app'
include 'dagger'
project(':dagger').projectDir = new File('/Users/foo/workspace/stdlib/dagger')
Run Code Online (Sandbox Code Playgroud)
你的'MyApp'build.gradle必须以相对路径Gradle的方式反映'匕首'模块的需要:
dependencies {
compile project(':dagger')
}
Run Code Online (Sandbox Code Playgroud)
就是这样.使用您需要的每个外部模块重复此步骤,您将拥有正确的Gradle多项目配置.
| 归档时间: |
|
| 查看次数: |
37485 次 |
| 最近记录: |