android - 依赖项、模块的问题。如何正确引用该库?

标签 android gradle android-studio android-gradle-plugin

我对某事感到困惑。我正在开发一个带有两个模块的 Android 应用程序。这是我的项目结构

MyProject
   app
      libs
         abc.jar
      src
      etc...
   importedProject
      libs
      src
      etc...
      build.gradle
   build.gradle

如果我右键单击 abc.jar,然后选择 Add as Library... ,出现一个对话框,询问我要使用选项添加哪个模块 appimportedProject .

如果我选择 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/

相关文章:

java - 文件 mkdirs() 方法在 android/java 中不起作用

java - Android 小费、税金、总计计算器

Gradle sonarqube 无法识别常规测试

android - 如何排除传递性 native 库?

android - Android Studio 中等效的 Eclipse Ctrl+O 快捷方式是什么?

java - Lollipop 上的 android Theme.Holo.Light.DarkActionBar

android-studio - Android Studio 0.8.2:删除垂直换行

java - 如何在抽屉导航中显示图像

java - 将数据从数据库检索到我的应用程序(不工作)

gradle - 无法创建检查器:classpath {null}