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更新了,极容易引发类似系列问题。但是根据问题点一直找下去,就可以了,你的问题可能和我的不一样,但可能很相似,提示内容有点太范了,无法精准定位问题,但请相信提示,哪个包有问题,绝对是它,一定要想办法去审查它,踩坑留标,警示后人

相关推荐
csj5017 小时前
安卓基础之《(28)—Service组件》
android
lhbian19 小时前
PHP、C++和C语言对比:哪个更适合你?
android·数据库·spring boot·mysql·kafka
catoop20 小时前
Android 最佳实践、分层架构与全流程解析(2025)
android
ZHANG13HAO20 小时前
Android 13 特权应用(Android Studio 开发)调用 AOSP 隐藏 API 完整教程
android·ide·android studio
田梓燊20 小时前
leetcode 142
android·java·leetcode
angerdream21 小时前
Android手把手编写儿童手机远程监控App之JAVA基础
android
NQBJT21 小时前
嵌入式从零开始(第十二篇):调试与工具链 —— 从 IDE 到逻辑分析仪
ide·stm32·单片机·嵌入式硬件·c#
菠萝地亚狂想曲21 小时前
Zephyr_01, environment
android·java·javascript
sTone8737521 小时前
跨端框架通信机制全解析:从 URL Schema 到 JSI 到 Platform Channel
android·前端
sTone8737521 小时前
Java 注解完全指南:从 "这是什么" 到 "自己写一个"
android·前端