Android应用开发之使用AndroidStudio3.0以及新版Gradle转移旧版项目遇到的几个问题和分析
白羽 2018-12-19 来源 :网络 阅读 1997 评论 0

摘要:本文将带你了解Android应用开发使用AndroidStudio3.0以及新版Gradle转移旧版项目遇到的几个问题和分析,希望本文对大家学Android有所帮助。

    本文将带你了解Android应用开发使用AndroidStudio3.0以及新版Gradle转移旧版项目遇到的几个问题和分析,希望本文对大家学Android有所帮助。


        

1.一般转移项目sdk路径一般不一样,这时候AS会提示更改,点击“OK”即可,这个比较简单。

2.提示项目的Gradle没有配置,是否要下载最新的Gradle,一般使用我们安装新版AS时已经有了,不用再次下载了,所以点击取消。

然后就会让你选择Gradle地址,一般在:AS安装目录/gradle/gradle-xx

3.完成上面两步之后可能会出现:

Error:Cause: com.android.build.gradle.tasks.factory.AndroidJavaCompile.setDependencyCacheDir(Ljava/io/File;)V

Consult IDE log for more details (Help | Show Log)

4.此时打开build.gradle点击重新同步后,可能会出现:

Error:The versions of the Android Gradle plugin and Gradle are not compatible.

Please do one of the following:

Update your plugin to version 2.4. This will require changes to build.gradle due to API changes.

此时需要修改build.gradle的com.android.tools.build:gradle版本到你第二步所选择的gradle所支持的版本(如果不知道的到底支持什么版本:1. 那就改2.3.0以上的,然后鼠标悬停在这行代码上,此时AS会提示最新版是多少,可以选择根据提示修改。2.查看你能正确运行的项目的版本,把这句代码copy过来即可)

dependencies {

classpath 'com.android.tools.build:gradle:2.2.3' //2.3.0

// NOTE: Do not place your application dependencies here; they belong

// in the inpidual module build.gradle files

}

5.还有可能出现这个窗口

也就是叫你更新gradle插件,你可以选择更新,但是如果你使用的三方包太多,又不知道他们支不支持最新版的,可以选择不再提醒。

6.最后运行的时候,如果你有用注解框架,还可可能提示:

Error:Execution failed for task ':Library:javaPreCompileDebug'.

> Annotation processors must be explicitly declared now. The following dependencies on the compile classpath are found to contain annotation processor. Please add them to the annotationProcessor configuration.

- butterknife-7.0.1.jar (com.jakewharton:butterknife:7.0.1)

Alternatively, set android.defaultConfig.javaCompileOptions.annotationProcessorOptions.includeCompileClasspath = true to continue with previous behavior. Note that this option is deprecated and will be removed in the future.

See https://developer.android.com/r/tools/annotation-processor-error-message.html for more details.

此时,需要在build.gradle的 Android - defaultConfing 里面添加:


   

javaCompileOptions {

    annotationProcessorOptions {

        includeCompileClasspath true

    }

}

   

如果你的项目依赖多个modle,每个modle都需要加上这句。


          

本文由职坐标整理并发布,希望对同学们有所帮助。了解更多详情请关注职坐标移动开发之Android频道!


本文由 @白羽 发布于职坐标。未经许可,禁止转载。
喜欢 | 2 不喜欢 | 0
看完这篇文章有何感觉?已经有2人表态,100%的人喜欢 快给朋友分享吧~
评论(0)
后参与评论

您输入的评论内容中包含违禁敏感词

我知道了

助您圆梦职场 匹配合适岗位
验证码手机号,获得海同独家IT培训资料
选择就业方向:
人工智能物联网
大数据开发/分析
人工智能Python
Java全栈开发
WEB前端+H5

请输入正确的手机号码

请输入正确的验证码

获取验证码

您今天的短信下发次数太多了,明天再试试吧!

提交

我们会在第一时间安排职业规划师联系您!

您也可以联系我们的职业规划师咨询:

小职老师的微信号:z_zhizuobiao
小职老师的微信号:z_zhizuobiao

版权所有 职坐标-一站式AI+学习就业服务平台 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
 沪公网安备 31011502005948号    

©2015 www.zhizuobiao.com All Rights Reserved