Android studio Build Log乱码+错误: 找不到符号符号

news/2024/7/16 8:35:00 标签: android studio, android, ide

控制台输出乱码,首先解决乱码问题,才可以精确的知道问题所在;

android studio>android studio=>Help=>Edit Custom VM Options...

输出一行代码在里面,保存,重启IDE

-Dfile.encoding=UTF-8

Clean 一下工程,然后Rebuild,没有解决看一步;

错误: 找不到符号
import com.myproject.myname.MyListView;
                      ^
  符号:   类 MyListView
  位置: 程序包 com.myproject.myname

这是一个典型的提示,造成的原因只有两个,一是缓存没有清,二是你真的有未更改地址的地方,虽然没有显示的提示语法错误!

一般提示的文件是一个 public final class ActivityAlertBinding implements ViewBinding 类似这样的文件,这是系统根据你的代码生成的,最顶上有一行提示-禁止更改内容的,系统生成改了没用Build还会出来。仔细看看错误的行,是不是包含了错误的路径,如果不是,那就下一步全局搜包的引用,如果路径真和你的预期不一样(比如你更改了类的位置,而View的子类又容易嵌套进布局文件中,项目变大你就很难发觉错误,最好的办法就是全局搜File usage,看看到底哪里引用了它,自定义的ListView随意更改位置,xml内的引用地方一律要改,这可能是个易忽视点

如果真的搜到了,一条条更改为你的正确的地址,重新编译即可;

如果import一个系统的包却提示找不到符号,我的是一个menu不认识,第一反应是gradle?环境?版本问题?我们来排查看看 “import android.widget.menu;”到底何德何能!

错误: 找不到符号
import android.widget.menu;
                     ^
  符号:   类 menu
  位置: 程序包 android.widget

终过排查发现,在调用menu的时候,有个menu布局文件被放在了layout里了,结果引用的时候

getMenuInflater().inflate(R.layout.my_menu, menu);还是对的!!!这就造成了你发现了不问题所在,其实应该把这个布局文件放入menu下面,也不清楚从什么版本开始这么规范严格了

总结:如果你的sdk改变了,或者Gradle更新了,极容易引发类似系列问题。但是根据问题点一直找下去,就可以了,你的问题可能和我的不一样,但可能很相似,提示内容有点太范了,无法精准定位问题,但请相信提示,哪个包有问题,绝对是它,一定要想办法去审查它,踩坑留标,警示后人


http://www.niftyadmin.cn/n/5200044.html

相关文章

适合学校或高校老师、学生学习用的网盘推荐

现代教育中,数字化的教学资源和家长的参与度越来越重要。然而文件传输的问题一直是学校和家长面临的一个挑战,网络限制、U盘病毒和文件管理不便等问题,都对教学质量和家校沟通造成了影响。Zoho WorkDrive企业网盘为学校还有教辅机构提供了一个…

亚马逊车灯外贸出口CE认证标准办理解析

车灯是车辆夜间行驶在道路照明的工具,也是发出各种车辆行驶信号的提示工具。车灯一般分为前照灯、尾灯、转向灯等。车灯出口欧盟需要办理CE认证。 CE认证是欧盟对进入欧洲市场的产品强制性的认证标志,是指符合欧盟安全、健康、环境保护等标准和要求的产…

17.Oracle11g的PL/SQL基础

Oracle11g的PL/SQL基础 一、PL/SQL的体系1、什么是PL/SQL2、PL/SQL 的优缺点2.1 PL/SQL的优点2.2 PL/SQL的缺点 二、PL/SQL的语法1、PL/SQL代码结构(块)2、PL/SQL基本语法2.1 变量声明2.2 流程控制语法 三、oracle的动态SQL 一、PL/SQL的体系 1、什么是P…

NameServer源码解析

1 模块入口代码的功能 本节介绍入口代码的功能,阅读源码的时候,很多人喜欢根据执行逻辑,先从入口代码看起。NameServer部分入口代码主要完成命令行参数解析,初始化Controller的功能。 1.1 入口函数 首先看一下NameServer的源码目…

JS,jQuery常用语法记录

JS,jQuery常用语法记录 JS常用语法: 1.操作剪切板 [可能无法在某些浏览器中正常工作] document.execCommand("copy")/document.execCommand("cut")// 复制链接function doCopyLink(id){$("#hiddenUrl").val("/article/viewArti…

怎么实现在微信公众号秒杀商品的功能呢

实现微信公众号秒杀商品的功能,需要结合微信公众平台和后端开发技术。下面将介绍整个实现过程,包括前期准备、开发流程和后期运营等方面。 一、前期准备 确定秒杀商品:选择适合秒杀的商品,要求数量充足、质量良好,同时…

用iPad记笔记?这10款笔记软件让你事半功倍!

最好的笔记软件可以让你在任何地方轻松记下笔记,无论是关于想法、业务见解,还是提醒事项。 笔记软件越来越受欢迎,尤其是随着移动设备的广泛普及,尤其是商务智能手机和平板设备iPad的普及。这意味着现在用于记笔记的移动应用程序…

线性表但是是Java中数组实用使用

线性表定义: 由n (n≥0)个数据特性相同的元素构成的有限序列称为线性表,(n0)的时候被称为空表。 线性表的顺序表示 线性表的顺序存储又被称为顺序表 优点 无需为表示表中元素之间的逻辑关系而增加额外的存储空间可以随意读取任意位置的元素 缺点 插入…