Android Studio 3.1中compile依赖过时被implementation替代的警告如何处理?
解决Android Studio中
compile依赖过时的警告问题 Hey there! Let's fix that dependency warning you're seeing in Android Studio.
问题原因
从Android Studio 3.1版本开始,compile这个依赖配置项已经被官方标记为过时,它会在2018年底被彻底移除,官方推荐使用implementation(或者根据需求使用api)来替代它。
你的当前依赖代码
你现在的依赖块是这样的:
dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) compile 'com.android.support:appcompat-v7:27.1.0' compile 'com.android.support.constraint:constraint-layout:1.0.2' }
修复方案
只需要把所有的compile替换成implementation就能消除这个警告,修改后的代码如下:
dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) implementation 'com.android.support:appcompat-v7:27.1.0' implementation 'com.android.support.constraint:constraint-layout:1.0.2' }
额外说明
implementation和旧的compile核心区别在于:implementation会让依赖仅对当前模块可见,不会传递到依赖该模块的其他模块,这样能有效提升项目的构建速度,也更符合现代Android项目的模块化设计。- 如果你的某个依赖需要被其他模块直接引用,那可以使用
api来替代compile(api完全继承了原来compile的传递性),但大部分普通场景下,implementation就足够满足需求啦。
内容的提问来源于stack exchange,提问作者vinod yadav
相关产品推荐
相关产品推荐

