• 你绝对想不到R文件找不到(cannot resolve symbol R)的原因


    你绝对想不到R文件找不到(cannot resolve symbol R)的原因

    最近在项目开发中 Android Studio 的 R 文件突然找不到了。IDE 中出现了以下提示

    cannot resolve symbol R

    cannot resolve symbol R

    Clean And Rebuild

    一般来说看到这个错误随便 Google baidu 回来的答案无非就是

    clean -> rebuild 工程

    而我的本能反应也是如此
    然而一点用都没有!
    wtf

    资源id冲突

    虽然整个工程涉及到 R 文件都无法找到,但是跑起来却是正常,完全没有错误提示的迹象!
    然后就是想是不是资源文件中的 id 冲突了,项目一定存在重复资源!于是从工程项目中找重复的资源,包括库项目。
    这下真的找到了两个库,而且引用了相同的资源!
    资源冲突
    于是哥就将这两个库给合并了,去掉重复的资源。心里满怀着胜利的喜悦,重新执行

    clean -> rebuild 工程

    然而下面的这个红色提示似乎阴魂不散!
    cannot resolve symbol R 似乎高举红旗在向自尊心极强的程序猿挑衅啊!
    cannot resolve symbol R
    这下哥就懵逼了!
    mengb

    万恶的 R 文件

    虽说这个 R 文件飘红不会影响项目运行,但是严重影响搬砖的效率和心情啊!
    于是就翻开项目 app 目录下的 build 文件看看项目中是否生成了 R 文件
    R生成
    在这个目录下是可以找到生成的 R 文件的。然后打开看到了 R 文件顶部有一句提示

    File size exceeds configured limit (2560000). Code insight features are not available.

    cannot resolve symbol R
    原来工程项目一直都扩张导致 R 文件太大超出了配置大小,R 文件没有被 IDE 正确的生成 class 文件
    这下感觉找到了救命的稻草,肯定一把死死抓住不放。

    救命的稻草

    知道原因,解决方案就容易多了,打开 AS 目录下的 idea.properties 配置文件。
    解决方法
    可以看到以下配置说明

    Maximum file size (kilobytes) IDE should provide code assistance for.

    The larger file is the slower its editor works and higher overall system memory requirements are

    if code assistance is enabled. Remove this property or set to very large number if you need

    code assistance for any files available regardless their size.

    idea.max.intellisense.filesize=5000

    idea.max.intellisense.filesize 默认为2500,这里修改为5000,然后重启 AS。
    当然这个配置修改了也会编辑器的速度造成一定的影响,但是先把问题解决了。
    重启后项目就正常了,红色的提示语终于消失。程序猿的天空也明朗了起来。
    shuai

    微信关注我们,可以获取更多

  • 相关阅读:
    java 安全沙箱模型详解
    ProcessLifecycleOwner判断Android应用程序前后台切换
    React 使用 antd 实现按需加载
    数据湖!这是个什么东东!!!
    Linux sed awk 总结之001
    Linux超实用网络篇汇总001
    非常实用Curl命令整理
    Mysql 查找锁定事务并kill
    sqlserver 查看sql语句是否被重用
    Linux下配置mysql允许指定IP远程访问
  • 原文地址:https://www.cnblogs.com/twodog/p/12140848.html
Copyright © 2020-2023  润新知