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

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

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

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

java 复制代码
-Dfile.encoding=UTF-8

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

bash 复制代码
错误: 找不到符号
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;"到底何德何能!

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

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

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

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

相关推荐
小比卡丘1 小时前
C语言进阶版第17课—自定义类型:联合和枚举
android·java·c语言
前行的小黑炭2 小时前
一篇搞定Android 实现扫码支付:如何对接海外的第三方支付;项目中的真实经验分享;如何高效对接,高效开发
android
落落落sss3 小时前
MybatisPlus
android·java·开发语言·spring·tomcat·rabbitmq·mybatis
代码敲上天.4 小时前
数据库语句优化
android·数据库·adb
GEEKVIP6 小时前
手机使用技巧:8 个 Android 锁屏移除工具 [解锁 Android]
android·macos·ios·智能手机·电脑·手机·iphone
model20058 小时前
android + tflite 分类APP开发-2
android·分类·tflite
彭于晏6898 小时前
Android广播
android·java·开发语言
与衫9 小时前
掌握嵌套子查询:复杂 SQL 中 * 列的准确表列关系
android·javascript·sql
菜鸟一皓9 小时前
IDEA的lombok插件不生效了?!!
java·ide·intellij-idea
500了16 小时前
Kotlin基本知识
android·开发语言·kotlin