当我们自己的包中的包或者类和sdk中android.jar的包或者类相同时,android studio默认使用的时android.jar中的内容,而如果我们想使用自己的包中的内容的话,就必须把优先级放到android.jar之前。这是这样一个简单的需求,我折腾了一个上午来搞定,本来时非常简单的事情,因为跳的坑太多,浪费了很多时间。 经过一些尝试后,发现下面的说法比较靠谱。 这里写链接内容 我的android studio是2.2.3版本的,同样适用,先把整个过程做个完整的梳理: 假定你有这样一个包:classed-full-debug.jar
把classed-full-debug.jar放在工程下的libs目录里,如果没有就新建这个目录。android studio2.2.3版本是有这个目录的。放入后右键,选择add as library。
通过File菜单或者F4进入project structure,左边选中app,再进到dependencies,点 + 选择file dependency ,再从libs目录选择你要的jar包,这里是test.jar,选择后把 scope置为Provided 最后,千万别忘了,要把你添加的jar挪到最前面,点击右边的蓝色向上箭头即可。 如图:
第三步:修改根目录下的build.gradle 找到工程根目录下的build.gradle,把
这段实现改为
allprojects { repositories { jcenter() } gradle.projectsEvaluated { tasks.withType(javaCompile) { options.compilerArgs.add('-Xbootclasspath/p:app/libs/classes_full_debug.jar') } }}如图: 
第四步:修改app/app.iml 最后,记得在app/app.iml中,把jdk的顺序调整到最后,如下:
这里改完后,每次重新打开Android stuio或者sync gradle,都会使得jdk的顺序发生变动,type=”jdk”所在的行会跑到前面去,为了方便起见,可使用下面的代码自动将type=’jdk’的行移动到最后:
把这段代码加到app下的build.gradle中即可。 如图所示: 
新闻热点
疑难解答