热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

解决升级到AndroidStudio4.2问题汇总

为什么升级个IDE要写篇文章记录下呢?每次升级AndroidStudio就会碰到一堆bug,网上一查遍地是踩坑篇,有已经被人踩过解决的,也有找

为什么升级个IDE要写篇文章记录下呢?

每次升级Android Studio就会碰到一堆bug,网上一查遍地是踩坑篇,有已经被人踩过解决的,也有找不到解决方法,自己硬着头皮尝试的,就这就已经劝退不少想升级的伙伴。这次我也记录一下从 4.0 版本升级上来踩过的坑。

1. Android Studio 4.0.2 升级到 4.1.2 (噩梦版本)

几个月前的某一天,日常浏览Android Developers时,看到Studio4.1.2的新特性,一时兴起就更新了,然后就踩坑了。

Studio 插件全部丢失

Studio4.1版本开始更换了插件目录,会导致插件丢失或者损坏。所以升级时候不用勾选升级插件,仅仅升级IDE,完了后重新安装插件吧。注意备份配置!注意备份配置!注意备份配置!(惨痛的经历就是当时我根本没想到会出现这种状况,只习惯性的导出了setting文件,然后就只能凭记忆重新找插件了)

很多插件不支持在4.1版本上使用了

之前几个好用的生成java模版代码的插件,都没办法使用了,也没找到替代插件,悲剧的以后只能自己手写[哭晕] ,太影响效率了

Gradle编译问题
  1. Sync Project with Gradle Files时,下载第三方依赖总会莫名其妙的失败,也没有找到谁有类似的经历,最后偶然发现把http改成https,就能正常下载了,有点神奇。

  2. 用了一段时间项目切到AndroidX上,同时也维护Android Support版本,git分支频繁切换后,有些类开始报红了,怎么治都不好,但是又不影响项目运行,慢慢的只当没看见了[捂脸],逼死强迫症。

  3. Build Project过程中下载第三方依赖报错

Could not HEAD ‘xxx.pom'. Received status code 502 from server: Bad Gateway

原因:Studio 的设置了代理,首先在setting -> Appearance & Behavior -> System Settings -> HTTP Proxy中看下有没有设置代理,如果没有继续找一下项目的gradle.properties文件或者/Users/用户名/.gradle/gradle.properties中,去掉如下内容:

systemProp.https.proxyHost=mirrors.neusoft.edu.cn
systemProp.https.proxyPort=80
systemProp.http.proxyHost=mirrors.neusoft.edu.cn
systemProp.http.proxyPort=80
当然相对于这些缺点,studio 新特性还是挺好用的,最起码抽风的概率降低了。

2. Android Studio 4.1.2 升级到 4.2.1

2.1 Gradle面板中gradle所有命令不见了

解决方法:

设置 => 最下面Experimental => do not build gradle task xxx => 取消勾选 => 然后Rebuild

2.2 IDE默认使用内置open jdk环境,但是 4.2 的使用的默认版本是jdk 11,当场开发项目rebuild就直接报错了
FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:kaptOnlineDebugKotlin'.
> A failure occurred while executing org.jetbrains.kotlin.gradle.internal.KaptExecution
   > java.lang.reflect.InvocationTargetException (no error message)
java.lang.NoClassDefFoundError: javax/xml/bind/JAXBException,

原因是:studio升级后默认配置发生变化,会默认使用更高版本的jdk进行编译,故找不到该类,发生报错,所以我们只要把本地的jdk的编译版本改回1.8即可解决,修改路径如下:
file -> project structure -> sdk location -> jdk location

解决升级到Android Studio4.2问题汇总
图片1

图中修改默认的JDK Location的路径即可

更多bug正在赶来的路上….

可能有些bug还没发现,目前可以正常使用。比起4.1.x噩梦版本强多了。注意:如果要升级最好先备份所有的配置,必要时候可以采用双应用共存方式。

推荐阅读
  • 本文详细介绍了如何在Linux系统上安装和配置Smokeping,以实现对网络链路质量的实时监控。通过详细的步骤和必要的依赖包安装,确保用户能够顺利完成部署并优化其网络性能监控。 ... [详细]
  • 本文详细介绍了如何使用PHP检测AJAX请求,通过分析预定义服务器变量来判断请求是否来自XMLHttpRequest。此方法简单实用,适用于各种Web开发场景。 ... [详细]
  • 优化ListView性能
    本文深入探讨了如何通过多种技术手段优化ListView的性能,包括视图复用、ViewHolder模式、分批加载数据、图片优化及内存管理等。这些方法能够显著提升应用的响应速度和用户体验。 ... [详细]
  • CentOS7源码编译安装MySQL5.6
    2019独角兽企业重金招聘Python工程师标准一、先在cmake官网下个最新的cmake源码包cmake官网:https:www.cmake.org如此时最新 ... [详细]
  • 本文详细介绍了Java编程语言中的核心概念和常见面试问题,包括集合类、数据结构、线程处理、Java虚拟机(JVM)、HTTP协议以及Git操作等方面的内容。通过深入分析每个主题,帮助读者更好地理解Java的关键特性和最佳实践。 ... [详细]
  • 在当前众多持久层框架中,MyBatis(前身为iBatis)凭借其轻量级、易用性和对SQL的直接支持,成为许多开发者的首选。本文将详细探讨MyBatis的核心概念、设计理念及其优势。 ... [详细]
  • UNP 第9章:主机名与地址转换
    本章探讨了用于在主机名和数值地址之间进行转换的函数,如gethostbyname和gethostbyaddr。此外,还介绍了getservbyname和getservbyport函数,用于在服务器名和端口号之间进行转换。 ... [详细]
  • PHP 编程疑难解析与知识点汇总
    本文详细解答了 PHP 编程中的常见问题,并提供了丰富的代码示例和解决方案,帮助开发者更好地理解和应用 PHP 知识。 ... [详细]
  • 本文详细记录了在基于Debian的Deepin 20操作系统上安装MySQL 5.7的具体步骤,包括软件包的选择、依赖项的处理及远程访问权限的配置。 ... [详细]
  • 本文详细介绍如何使用arm-eabi-gdb调试Android平台上的C/C++程序。通过具体步骤和实用技巧,帮助开发者更高效地进行调试工作。 ... [详细]
  • 本文将介绍如何编写一些有趣的VBScript脚本,这些脚本可以在朋友之间进行无害的恶作剧。通过简单的代码示例,帮助您了解VBScript的基本语法和功能。 ... [详细]
  • 本文介绍了如何利用JavaScript或jQuery来判断网页中的文本框是否处于焦点状态,以及如何检测鼠标是否悬停在指定的HTML元素上。 ... [详细]
  • 1:有如下一段程序:packagea.b.c;publicclassTest{privatestaticinti0;publicintgetNext(){return ... [详细]
  • 本文介绍了Java并发库中的阻塞队列(BlockingQueue)及其典型应用场景。通过具体实例,展示了如何利用LinkedBlockingQueue实现线程间高效、安全的数据传递,并结合线程池和原子类优化性能。 ... [详细]
  • 本文探讨了 RESTful API 和传统接口之间的关键差异,解释了为什么 RESTful API 在设计和实现上具有独特的优势。 ... [详细]
author-avatar
陈家碧玉3
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有