我对某事感到困惑。我正在开发一个带有两个模块的 Android 应用程序。这是我的项目结构
MyProject
app
libs
abc.jar
src
etc...
importedProject
libs
src
etc...
build.gradle
build.gradle
如果我右键单击 abc.jar,然后选择
Add as Library...
,出现一个对话框,询问我要使用选项添加哪个模块 app
和 importedProject
.如果我选择
importedProject
,它向importedProject的build.gradle文件添加了一个依赖项。但它使用我硬盘上文件的完整路径。compile files('C:/Users/my.name/workspace/MyProject/app/libs/abc.jar')
我很困惑为什么它使用完整的本地路径而不是相对路径。 Android Studio 甚至警告我不要这样做,但它为我做了。
我已经尝试了这些但没有任何工作:
compile files('app/libs/abc.jar')
compile files('MyProject/app/libs/abc.jar')
有人知道我在这里做错了什么吗?谢谢
编辑 :
让它工作使用:
compile files('../app/libs/abc.jar')
但是,我读过使用相对路径是一个坏主意。有更好的解决方案吗?
最佳答案
Gradle 构建文件中的路径通常与构建文件的位置相关。在这种情况下,您希望路径相对于根项目。
compile files("${rootProject.projectDir}/app/libs/abc.jar")
关于android - 依赖项、模块的问题。如何正确引用该库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27325734/