我一直在尝试新的android构建系统,但遇到了一个小问题。我已经编译了自己的aar ActionBarSherlock包,我称之为“ActionBarSherlock”。啊。我想做的是用这个aar来构建我的最终APK。如果我使用compile project(“:ActionBarSherlock”)将整个ActionBarSherlock库作为一个android库模块包含到我的主项目中,我就能够成功地构建,没有任何问题。
但我的问题是,我想手动将依赖项作为aar文件包提供,如果我想要一个JAR,那么我似乎不知道如何正确地将其包含到我的项目中。我试图使用编译配置,但似乎不起作用。在编译过程中,我一直无法找到符号,这告诉我类。aar包中的jar未包含在类路径中。
有人知道将aar包手动包含为文件的语法吗?
build.gradle
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.4'
}
}
apply plugin: 'android'
repositories {
mavenCentral()
}
dependencies {
compile files('libs/actionbarsherlock.aar')
}
android {
compileSdkVersion 15
buildToolsVersion "17.0"
}
编辑:所以答案是目前不支持它,如果你想跟踪它,问题是。
编辑:目前,由于这仍然不直接支持,最好的选择似乎是@RanWakshlak提出的解决方案
编辑:通过使用@ViPulShah提出的语法也更简单
您可以从存储库引用aar文件。maven是一个选择,但有一个更简单的解决方案:将aar文件放在libs目录中,并添加一个目录存储库。
repositories {
mavenCentral()
flatDir {
dirs 'libs'
}
}
然后在依赖项部分引用库:
dependencies {
implementation 'com.actionbarsherlock:actionbarsherlock:4.4.0@aar'
}
你可以查看民安的博客帖子了解更多信息。
编辑:屏幕截图6中的模块依赖已在Android Studio 4.1中删除。作为一种选择,将模块依赖关系添加到build.gradle.
dependencies {
implementation project(':your_module')
}
编辑:Android Studio 4.2的用户界面和工作流程发生了很大变化。添加依赖项的过程现在在官方文档中有很好的解释:使用“项目结构”对话框添加依赖项
请按照以下步骤操作(我已经在Android Studio 2.2上测试过)
假设您将aar文件保存在libs文件夹中(假设文件名为cards.aar
)
然后在appbuild中。gradle
指定以下内容,然后单击“将项目与gradle文件同步”。开放项目级构建。gradle和addflatDir{dirs'libs'}
如下所示
allprojects {
repositories {
jcenter()
flatDir {
dirs 'libs'
}
}
}
现在打开应用程序级构建。grdle文件并添加。aar
文件
dependencies {
implementation(name:'cards', ext:'aar')
}
如果一切顺利,你会看到图书馆入口是在构建-
还请注意,如果您正在导入一个。来自另一个项目的aar文件,其中包含依赖项,您需要在构建中包含这些依赖项。格雷德尔也是。
我试图通过在AOSP源代码中构建一个模块来构建基于java的android应用程序。我的应用程序使用android.support.constraint.ConstraintLayout。但是,我没有找到在我的中包含约束布局依赖项的直接方法。 我已经把我的项目放在下,并尝试了这个 : 但是,这会带来构建错误: 忍者:错误:“out/target/common/obj/JAVA_LIBRARIES/
问题内容: 我正在使用LiteIDE for Go。我的Go文件位于此处: 当我使用以下文件添加文件时: 导入“ ../Helper” 我收到此错误: 无法加载软件包:/Users/username/go/src/src/projectA/main.go:4:8:非本地软件包中的本地导入“ ../Helper” 有什么想法我做错了吗? 问题答案: 您通过导入路径导入软件包。对于位于中的packag
问题内容: 我想知道如何在react项目中包含一个外部javascript库。例如,我想导入jspdf库:https : //github.com/MrRio/jsPDF/blob/master/jspdf.js并在我的reactjs应用程序中使用它。 到目前为止,我尝试使用如下需求: 我有以下错误: TypeError:pdfConverter.jsPDF不是一个函数 。 为了使其正常工作,我做
问题内容: 我已经完成了连接数据库(MySQL)的项目。现在,我要将项目导出为jar。但是我不知道如何包括其外部依赖项?在Eclipse中有什么方法可以做到这一点,还是应该为此使用任何脚本? 问题答案: 当你将项目导出为“可运行的jar”(在项目->导出->可运行的jar上单击鼠标右键)时,可以选择将所有依赖项打包到生成的jar中。它还有两种其他方式(请参见屏幕截图)来导出库,请在决定使用哪种打包
我写了一些库,其中有一部分UI。此外,这个库使用另一个库。我想提供发行版来在任何应用程序中使用这部分UI。 我得库有下一个依赖项: /home/user/projects/mainapp/app/build/intermediates/explodede-aar/com.my.sdk/sdk/0.0.1/res/values/values.xml:78:21-29:找不到与给定名称匹配的资源:at
我使用的是Android Studio1.4