今天对接一个海康监控的sdk,其中sdk 是以aar的形式提供的,并且我需要用到此aar的模块是个library。所以按照正常的在application模块中引入aar的方式一致报错,首先提示要关闭offline ,然后关闭了还是会提示错误。想了很久不明白。最终通过公司前辈的指导,正确的引入了aar。
1.除了和正常的aar的引入方式外,我们还需要在application所在模块的build.gradle文件中加入如下一段:
repositories { flatDir { dirs 'libs', '../模块名/libs' } }
在application的build中也要加入文件的指向,可加入各个模块,其中用逗号隔开,模块名就是你的modlename。
然后在你自己模块中还要正确引入:
repositories { flatDir { dirs 'libs' } } dependencies { compile fileTree(include: ['*.jar'], dir: 'libs') compile(name: 'aar名字', ext: 'aar') }
到此aar的引入就完成了。
———————————— 更新于 2018-01-03 ————————————
最好使用远程依赖的方式,这种方式可以有效解决,多层级依赖,导致相同的库文件重复的问题。
远程依赖的规则是不传递依赖,这样本模块依赖的再引用的模块是不可见的:
模块A,B,C
如果B依赖C并且是远程依赖,那么A依赖B的时候,C对于A是不可见的。
如果我们需要A中使用C,那么可以在A中依赖C。
另一种解决方式:
那么我们在library中依赖aar的时候就可以考略将此aar上传到maven仓库或者其他的远程地址,这样在依赖的时候就不会出现编译不通过或者运行不了的问题。
本文向大家介绍举例讲解AngularJS中的模块,包括了举例讲解AngularJS中的模块的使用技巧和注意事项,需要的朋友参考一下 AngularJS支持模块化的方法。模块用于单独的逻辑表示服务,控制器,应用程序等,并保持代码的整洁。我们在单独的js文件中定义的模块,并将其命名为按照module.js文件形式。在这个例子中,我们要创建两个模块。 Application Module -
本文向大家介绍实例讲解Python中SocketServer模块处理网络请求的用法,包括了实例讲解Python中SocketServer模块处理网络请求的用法的使用技巧和注意事项,需要的朋友参考一下 SocketServer创建一个网络服务框架。它定义了类来处理TCP,UDP, UNIX streams 和UNIX datagrams上的同步网络请求。 一、Server Types 有五个不同的服
本文向大家介绍python XlsxWriter模块创建aexcel表格的实例讲解,包括了python XlsxWriter模块创建aexcel表格的实例讲解的使用技巧和注意事项,需要的朋友参考一下 安装使用pip install XlsxWriter来安装,Xlsxwriter用来创建excel表格,功能很强大,下面具体介绍: 1.简单使用excel的实例: 2.常用方法说明 1.Workboo
本文向大家介绍jquery验证手机号是否正确实例讲解,包括了jquery验证手机号是否正确实例讲解的使用技巧和注意事项,需要的朋友参考一下 如果要做手机号的验证,那么我们需要知道手机号码的号段。 //移动号码归属地支持号段:134 135 136 137 138 139 147 150 151 152 157 158 159 178 182 183 184 187 188 //联通号码归属地支持
本文向大家介绍常见的python正则用法实例讲解,包括了常见的python正则用法实例讲解的使用技巧和注意事项,需要的朋友参考一下 下面列出Python正则表达式的几种匹配用法: 此外,关于正则的一切http://deerchao.net/tutorials/regex/regex.htm 1.测试正则表达式是否匹配字符串的全部或部分 2.测试正则表达式是否匹配整个字符串 3.创建一个匹配对
在我的Android应用程序项目中,我试图避免在我的项目中引用一个外部Maven库,否则我会从那里加载多个。组成一个SDK的aar工件。 相反,我想将 .aar 文件放入我的项目中,然后从我的一个 Gradle Android 库模块中引用它们。 我已经尝试了不同的方法——但都不管用。 灵感来自 https://stackoverflow.com/a/72672032/35689 在这里,我的工件