6.2、Android Studio 添加编译依赖
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了6.2、Android Studio 添加编译依赖相关的知识,希望对你有一定的参考价值。
参考技术A 文章摘要
1、 三种依赖类型
2、库依赖关系配置
3、远程仓库
4、查看依赖关系树
英文文献
android Studio中的摇篮构建系统可以很容易地包括外部的二进制文件或其他库模块到您的构建与依赖。该依赖性可以位于您的计算机上或远程仓库中,他们宣布任何传递依赖将自动包括在内。
要添加一个依赖于你的项目,指定诸如依赖配置compile在dependencies您的块build.gradle文件。
例如,下面build.gradle为应用模块文件包括三种不同类型的依赖关系:
每个这些要求不同类型的依赖关系如下:
此声明一有依赖性 的Android库模块 名为“在MyLibrary”(此名称必须定义为库名称相匹配include你的 settings.gradle 文件)。它需要构建系统编译库模块与应用模块,并在您的APK所产生的AAR文件。
由于Gradle读取相对路径的build.gradle 文件,这告诉构建系统添加您的项目内的所有JAR文件 module_name/libs/的目录的依赖。
或者,您可以指定单独的文件如下:
这实际上是以下简写:
这宣告了“应用程序魔”库的12.3版本的依赖,在“code.example.android”命名空间组内。
内侧dependencies块,可以声明使用几种不同的一个库依赖依赖关系配置(诸如compile上面示出)。每个相关配置提供了摇篮有关如何使用图书馆不同的指令。下面的列表描述了每个可使用在你的Android项目库依赖的配置。
以上配置适用于项目的主要来源集,它适用于所有的构建变种。
如果你不是想声明的依赖只有特定的 构建变量 源设置或更改一个 测试源设置 ,你必须利用配置名称以及与构建变量或测试源集的名称前缀它。
例如,在添加compile
依赖关系只为您的“免费”产品的风味(使用远程二进制依赖),它看起来像这样:
但是,如果你想添加一个依赖于结合了产品的风味变体和构建类型,那么你必须初始化的配置名称configurations块。下面的示例增加了一个apk依赖于你的“freeDebug”打造变种(使用本地二进制依赖):
要添加compile为本地测试和仪表测试的依赖性,它看起来像这样:
如果你的 库模块提供了多个变种 ,你可以添加不同的库变体像这样不同的应用程序变量:
当你的依赖比当地的图书馆或文件树以外的东西,摇篮会在哪个在线存储库中指定的文件 repositories的块build.gradle文件。
默认情况下,新的Android Studio项目申报JCenter作为该项目的顶级存储库位置build.gradle的文件,如下图所示:
如果你想从Maven的中央仓库的东西,然后再添加 mavenCentral(),或本地存储库使用mavenLocal():
参考配置:
有些直接依赖可能有自己的依赖。这些被称为 传递依赖 。而不是要求您手动声明每个传递依赖,摇篮自动收集,并增加了它们。为了形象化两个项目的直接和传递依赖,对于摇篮的Android插件提供了生成依赖关系树为每个摇篮任务 构建变量 和 测试源集合 。
要生成此报告,步骤如下:
下面的示例报告显示调试构建变量的依赖关系树,包括前面例子中的本地库模块依赖和远程依赖性。
编译程序依赖于 <windows.h> 而没有 Visual Studio
【中文标题】编译程序依赖于 <windows.h> 而没有 Visual Studio【英文标题】:Compile Programs Depend on <windows.h> Without Visual Studio 【发布时间】:2013-03-03 08:04:53 【问题描述】:是否可以编译依赖windows.h
的c++程序而无需安装完整的visual c++包?
我刚刚写了一个小程序,调用了windows.h
中定义的一些函数(比如ShellExecute
)。
我不想为了编译这么小的东西而安装整个 Visual Studio 包。所以我想知道是否可以只安装最小的包(只是编译器和库)。
谢谢,
【问题讨论】:
没有 Visual Studio 或 Visual C++ 包?? @Cicada 我从来没有真正使用过 Visual Studio IDE。我一般不想要ide。 (我不介意编译器和库) 您的两个选择是 mingw 或 windows sdk(它带有较旧的 C++ 编译器 IIRC)。但是,没有理由不安装 Visual C++ IDE。 @JesseGood 我几乎从不接触依赖于 Windows 的东西......这只是一个非常小的东西......我已经安装了 mingw,所以我想这就足够了吗? 我经常使用 Windows API 和 MinGW。这是很有可能的。不过,我还没有看到对 Vista+ API 的支持。我必须使用 VS。 【参考方案1】:这是可能的,但是您需要获取所有库和标头。 也许您应该安装 express 版本,并选择最小安装。 看看 IDE 本身。
【讨论】:
Windows SDK 可能比 VC++ Express 更容易——甚至不会安装 IDE 期 @StephenLin: 比较简单,但我认为它附带的编译器很旧。 嗯,显然最新的 Windows SDK 完全放弃了构建环境(link)以上是关于6.2、Android Studio 添加编译依赖的主要内容,如果未能解决你的问题,请参考以下文章
使用Android Studio调试系统应用之LiveTV:移植编译调试,一气呵成
Android Studio 将外部项目添加到 build.gradle