我升级到Ubuntu 11.10,Eclipse 3.7.0,ADT 14.0.0。
当我替换桌面上/ res / drawable-nodpi目录中的图片资源或/ res / raw目录中的声音资源时,重新编译的程序和Project Explorer都使用一些以前缓存的版本。
我尝试了以下方法,其中没有一个有效:
right-click on filename in project explorer: Refresh
right-click on /drawable-nodpi dir in p.e.: Refresh
right-click on /res dir in p.e.: Refresh
right-click on Project in p.e.: Refresh
Project -> Clean...
Project -> check Build Automatically, Run->Run
该程序正确地重新编译新的源代码更改,但重用其自己的缓存资源。 这是一个过去在Ubuntu 10下工作的现有项目。
作为一种解决方法,我将文件重命名为磁盘;在Eclipse Project Explorer中删除了该文件;恢复了磁盘上文件的名称;然后将文件从桌面拖到Project Explorer中的/ res / drawable-nodpi文件夹中。 Eclipse回来时弹出一个问题,询问我是否要将文件复制或链接到Eclipse中。我选择了链接。这最终获得了导入资源的新版本。
更新:在使用这些图像的源代码在其他地方被修改后,它退出重新编译,说R.drawable.mypicname不再引用任何内容。因此,链接资源毕竟不可靠。最新的解决方法是手动复制桌面上的文件并将其粘贴到Eclipse ProjEx / res / drawable-nodpi目录中。这在没有任何源代码更改的情况下重新编译,并在设备上运行。
清洁和刷新都无法正常工作是非常意外的行为。它为什么这样做?我究竟做错了什么?如何设置Eclipse环境,以便在我更改磁盘上的文件时,它使用当前的最新版本?或者至少允许我刷新?感谢。
答案 0 :(得分:1)
启用轻量级“访问时刷新”以使工作区与文件系统保持同步。
Eclipse中的此选项位于General-> Workspace下的Preferences中,如here所示。
答案 1 :(得分:1)
在您的应用上查找 bin 。可能有一个名为 res / crunch 的文件夹,因此请搜索不刷新的drawable并手动刷新。
答案 2 :(得分:0)
在我的情况下,我输入错误的'R',以便eclipse无法找到正确的图像文件。 尝试改变这个:import android.R; => import com.example.myfirstapp.R;