第一种
引用libs目录下所有的jar
或aar
包
直接在dependencies
加入以下代码,可以将libs目录下的所有jar和aar文件导入
1
| implementation fileTree(dir: 'libs', include: ['*.jar', '*.aar'])
|
此种方式简单粗暴,但是不允许同时出现同一模块不同编译类型的jar(或aar),例如:如果libs
同时存在test-release.aar
和test-debug.aar
,他们都是来自同一个module的打包,但是只是编译类型不一样,如果同时存在的话会编译不过。
特定引用libs目录下的名字为xxx的jar包
1 2 3
| dependencies { implementation files('libs/xxx.jar') }
|
第二种
- 在模块的gradle中添加目标位置
1 2 3 4 5 6 7
| android { repositories { flatDir { dirs: 'libs' } } }
|
- 在dependencies中添加
1 2
| implementation(name:'xxx', ext:'aar') implementation(name:'xxx', ext:'jar')
|
或者1 2 3
| dependencies { implementation files('libs/xxx.aar') }
|
完整版
在module如上依赖就会产生问题,所以按照如下方法:
在allprojects
中加入flatDir
,然后再去项目中引用即可。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| allprojects { repositories { google() mavenCentral() jcenter() flatDir { dirs project(':base_lib').file('libs') } }
gradle.projectsEvaluated { tasks.withType(JavaCompile) { options.compilerArgs.add('-Xbootclasspath/p:base_lib/libs/framework.jar') } } }
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
| apply plugin: 'com.android.application'
android { compileSdkVersion 27 defaultConfig { applicationId "com.noahedu.testtouch" minSdkVersion 22 targetSdkVersion 27 versionCode 1 versionName "1.0" testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } repositories{ flatDir{ dirs 'libs' } } }
dependencies { implementation (name:'app-release',ext:'aar') implementation(name: 'appcompat-v7-25.3.1', ext: 'aar') implementation files('libs/support-annotations-25.3.1.jar') implementation files('libs/support-compat-25.3.1.jar') implementation files('libs/support-core-ui-25.3.1.jar') implementation files('libs/support-fragment-25.3.1.jar') implementation files('libs/support-media-compat-25.3.1.jar') implementation files('libs/support-core-utils-25.3.1.jar') implementation files('libs/support-vector-drawable-25.3.1.jar') implementation files('libs/support-animated-vector-drawable-25.3.1.jar') }
|