无论怎样都不能生成R.java

来源:互联网 发布:linux 退出 编辑:程序博客网 时间:2024/05/16 14:04
首先确定你的SDK是新的。
其次接下来检查你的.xml文件,文件名不能大写。
如果xml文件太多 ,那么clean一下你的项目,这时候注意看Console的提示。
Console会提示你xml文件错误在哪里
修改完xml文件之后
clean你的项目,再build你的项目
R.java会重新出现或更新

clean工程后R文件消失,是因为有布局文件中存在错误,修复错误后重新build工程即可重新生成正确的R文件


后续更新见下文:http://blog.sina.com.cn/s/blog_7b83134b0101bs8t.html


我用以下的方法均未解决,后来小的生气了,开始右键粗暴导出,结果eclipse终于他妈开始直言不讳了:No Build Tools installed in the SDK.(就是说你很傻逼,你他妈都没把工具给我我给你生成个屁啊)
所以我开始:
Lauch the sdk manager and download the new package Android SDK Build-tools which didn't get installed automaticaly when you update to ADT 22
http://stackoverflow.com/questions/16596886/export-apk-from-eclipse-produces-error-no-build-tools-installed-in-the-sdk
这时候android adk manager这逼正在下载build-tools呢。
正好我来谈谈感想,开始eclipse崩了,我开始解决问题,解决不了,重装,重装之后这逼开始提示我没生成apk,我跟着网上的提示clean,clean结束的时候就爽了,我的R.java也clean掉了,而且打死也他妈不生成了,我就悲剧的开始把备份的R.java拷贝过来,结果反正就是不能生成,耗费了我大量的时间,感觉智商都他妈下降了,艹。
最大的问题是遇到问题就上google,当然有时候这是个好事,但是前提是自己必须想一想,想都不想找到方法就像救命稻草一样开始傻逼兮兮的尝试,只会把软件开发调试变成一件体力活,而且会降低自己的智商,真的。



以下来自:http://blog.csdn.net/pinklpig/article/details/6566578


导入android源码后,基本都有错误,R.java也不会自动生成,因为是第一次导入工程,工程有错R.java就不会自动生成了,工程有错误,当然模拟器就不能启动,也就看不到效果。随后网上找各种解决方法,网上解决方法主要有这几种 
  
1、选择菜单  Project >> Clean ,前提是勾选上 Bulid Automatically(自动构建部署) , 点Clean后会重新构建项目,因为一般情况下,R.java文件在这个时候会重新更新生成一边,如果工程有错,就不会自动生成。 
2、选择工程,右键 Android Tools >> Fix Project Properties 这个操作有时候可以修正一些错误,但我的不行。 
3、还有的说法是重新建一个空的工程,然后把这里面的代码,资源文件按照对应的包路径什么的拷进去,然后重新生成一边,这种方法,也想当于是第一种方法,都是重新构建部暑,性质一样的。 

   以上几种方法都试了,R.java依旧没出现,整个工程还是一大堆错误。随便点了一个有错误的布局XML文件,看到这样一个错误代码android:layout_height="match_parent" , 之前我都用1.5/1.6/2.1 版本的SDK layout_height里面没有看到match_parent这个属性,然后问群一个兄弟说这个属性是2.X版本的,想了下,是不是因为工程的SDK版本和eclipse默认的SDK版本问题呢,于是选择工程,右键 Properties >> Android 然后看到右边的一块 Target Name, 我的是选中 Android 1.5,然后换了一个 2.1 的 ,点击Appply ,工程自动构建,看到错误少了一些,换到2.2,重新构建,错误没了,久未解决的问题解决了,R.java也出来了,一个字高兴啊,启动模拟器一切正常。 

  总结下当导入其它源码时候,首先要保证源码的SDK版本和你eclipse默认版本是否一致。 
查看源码版本办法:打开default.properties 文件,看target=android-7 这后面这个数是多少。 
版本对应关系:target=android-3 <---> android 1.5  ,target=android-4 <---> android 1.6 , 
target=android-7 <---> android 2.1  ,target=android-8 <---> android 2.2 其它的自己测试下。


 自动生成的工程里缺少R.java,

 

按照网上的方法“右击你的工程(项目)——>Android Tools——>Fix Project Properties ”不管用, 

确保项目编译了一下clean,或是右击项目-->property-->android-->applay一下 也是不行

google和百度一通后,无果。

继后跟踪发现,R.java在工程里面自动生成,后到官方站点看了帮助文档,发现通过platform-tools路径下的aapt.exe执行,再经过检测,aapt.exe程序好像已经损坏,不能执行,故而再sdk setup中执行,获取该文件,覆盖原来的,R.java自动产生了。

问题解决,为何aapt.exe损坏,还有待考证

http://www.cnblogs.com/cngreatwall/archive/2011/03/11/1980525.html


-----------------------------------------------------------------------我是分割线-----------------------------------------------------我也是r文件不能生成,但碰到的和上面提到的都不一样

1、:AndroidManifest.xml

        <activity android:name=".Index" android:label="@string/index"> </activity>

index没定义!

2、包名改了, AndroidManifest.xml里的还没改过来。


3、资源文件只能以小写字母和下划线做首字母,随后的名字中只能出现 a-z、0-9、_ 这些字符。 

0 0