gpt4 book ai didi

android - 在 android-studio/gradle 中添加全局库的正确方法

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:50:11 25 4
gpt4 key购买 nike

首先,我知道如何将local 库添加到build.gradle 文件,这里已经在几个问题中讨论过了(基本上都是相同),参见 here , herehere .但是你必须硬编码 build.gradle 文件中的 compile files('/path/to/lib.jar') 语句中的路径,这不是很好,不可重新分发等,如果您使用不在项目文件夹结构中的库。我更喜欢在同一个地方为我的所有项目维护这个库(所以它总是对所有项目都是最新的等等)。因此,我想知道如何以一种理智的方式将无法通过 Maven 获得的库添加到使用 gradle 的 Android-Studio 项目中,前提是该库已作为全局库添加到 AS 的首选项中。

到目前为止我做了什么:

我使用 Google 的新 Android-Studio,它使用 gradle 进行构建管理,构建一个 Xposed framework module .为此,我必须包含一个外部库 XposedLibrary,我从相应的 Github repository 下载了它。使其保持最新状态。

它包含 jar XposedLibrary/XposedBridgeApi.jar,我将其添加到 AS 中作为全局库(Ctrl+Shift+Alt+S -> 全局库 ->绿色加号添加文件夹 XposedLibrary)。编译失败,提示它不知道导入的类。所以我不得不手动将库添加到 build.gradle 文件,在依赖项中添加相应的行,如下所示:

dependencies {
compile files('libs/android-support-v4.jar')
compile files('/home/sebastian/dev/android/XposedMods/XposedLibrary/XposedBridgeApi.jar')
}

我尝试只添加 compile files('XposedBridgeApi.jar')compile files('XposedLibrary/XposedBridgeApi.jar') 但这没有用.

那么,在不使用完整路径的情况下将 AS 全局库添加到依赖项的好方法是什么? (我不喜欢从 lib/ 文件夹中符号链接(symbolic link)到 jar 文件的想法;))

最佳答案

通过

引用文件时
files("relative/path/to/a.jar")

相对路径是相对于此代码段所在的构建脚本进行评估的。因此,当您的 build.gradle 文件位于“/a/project/build.gradle”中时,jar 应该位于“/a/project”中/relative/path/to/a.jar'。在多项目 gradle 构建中,您可以将 jar 放在相对于根项目的文件夹中,并通过以下方式在所有子项目中引用它

rootProject.files("relative/to/root/a.jar")

希望对你有帮助,干杯,

雷内

关于android - 在 android-studio/gradle 中添加全局库的正确方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17219222/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com