• R文件丢失异常原因汇总


    引言:

    R文件丢失异常在java开发中是个比较常见的异常,造成这个异常的原因可能非常微小,但是给Android开发者们造成的麻烦可是巨大的,当程序员们费尽千辛万苦,找到自己错在哪里的时候,绝对会对自己的粗心大意而捶胸顿足,哀叹不已。


    异常提示:

    R.java was modified manually! Reverting to generated version!
    或者项目中gen目录下没有生成R文件,运行项目的时候会报错

    我的错误:

    最近一次我出现这个错误是因为新电脑中的Eclipse中指向的Android sdk路径中带有中文路径,项目workspace中也有中文路径,在我将这两个中文路径改完之后,R文件就重新恢复了。
    比较坑的是另一个同事的错误原因,在他出现R文件丢失异常之后,Android技 术组长来看了半天,没有发现哪里错误,最后出动总监大人,总监大人花费了不少时间之后,终于发现错误原因:项目命名为Android_demo,但是其中 的下划线_是中文打出的,不是英文,所以出现了这个问题,同事的电脑是MAC,而我的电脑是windows,我并没有在自己的电脑上找出怎么打出中文的 _,所以出现这个问题的概率还是很小的。

    其他原因:

    下面我们来说说其他可能造成R文件丢失的原因:

    1.项目编码不对,在导入其他人项目的时候可 能出现,在这里要建议大家最好把自己的eclipse编码设置为UTF-8最好,大部分项目都会使用这个编码,如果设置这个编码之后你导入的项目还是出现 乱码、R文件丢失之类的问题,那你可以换成GBK编码,如果你要导入的项目是其他编码,那我只能祝你好运,多花点时间找出这是什么编码。

    Eclipse设置默认编码:Window——Preferences——General——workspace,然后在下方的Text file encoding中选择Other——UTF-8(注意,这是一个输入框,不仅仅是下拉选择框,当你找不到GBK编码的时候,可以手动输入)即可。

    Eclipse中单独项目设置编码:右键项目——Properties——Resource——Text file encoding,在Other中选择UTF-8即可(这里也可以手动输入编码).

    2.xml(包括layout布局、values资源以及其他xml文件)文件出错:可能是你xml格式出错,也可能是你的xml中某些属性忘了设置,甚至可能是你引用了错误的xml文件。
    解决办法:xml格式出错的时候一般res文件夹及其子文件夹都会出现一个小叉号,这时候就要好好检查相应的报错的xml文件了,但是如果没有报错,那你可以试试将项目的xml文件都恢复到没有出现异常之前的版本,然后一一检查你修改后的xml文件。

    3.xml文件和drawable下资源文件不可以为大写字母和数字
    解决办法:将相应文件名改为小写字母或者小写字母和数字混搭的命名。

    4.Eclipse或者adt插件版本问题,在adt19版本的时候就出现过bug
     
    解决办法:升级最新已经修复bug的版本或者卸载现有版本,使用成熟的旧版本插件,建议使用android开发官网的ADT

    5.项目sdk版本太低或者版本不对
    解决办法:右键项目——properties——Android,选择相应的sdk版本,点击Apply——OK即可。

    下面还有几种解决措施可以 帮助大家修复R文件丢失异常:
    • 选择Eclipse菜单栏——Project,点击Build Automatically,使其处于勾选状态即可,这样在你修改完项目之后Eclipse就会及时的帮你自动编译,跟新R文件;
    • 选中项目,Project——Clean...,这样会清除掉旧版本的各种生成文件,并产生最新的项目生成文件,跟新R文件;
    • 右键项目,Android Tools——Fix Project Properties,会修复项目中的问题。

    好了,以上就是我知道和总结的R文件丢失异常了,如果大家还有其他的产生这个异常的情况和解决办法,欢迎留言讨论,谢谢~~~
     
  • 相关阅读:
    Nvidia TX2 Robot 环境配置记录
    [DL学习笔记]从人工神经网络到卷积神经网络_2_卷积神经网络
    [DL学习笔记]从人工神经网络到卷积神经网络_1_神经网络和BP算法
    windows重建图标缓存(解决快捷方式图标丢失,图标加载时间长问题)
    tensorflow安装日志(PIP)
    java中字符串的排序(1)
    可行性分析报告
    冒泡,选择,插入,快速排序在Java中的实现
    四则运算法则在Java中的实现
    关于二次方程计算器的程序开发
  • 原文地址:https://www.cnblogs.com/misybing/p/4796933.html
Copyright © 2020-2023  润新知