我正在玩Renderscript,然后我从我的源代码中删除了我的.rs文件。我还删除了我的res文件夹中的原始文件夹,它有几个.bc文件,不幸的是现在我不断得到:
[2013-08-18 15:16:43 - Zart3] error: error reading '/Users/me/workspace/Zart3/src/RSAttempt.rs'
我找不到任何其他痕迹,我刷新了应用程序等,没有运气。我错过了什么步骤?
答案 0 :(得分:0)
我关闭了Eclipse,然后重新启动了。还是错误。重启后,打开Eclipse并没有错误。 耸肩
答案 1 :(得分:0)
在构建时,RenderScript会将.rs
个文件编译为.bc
中的字节码(PROJECT/res/raw/
),该文件将滚动到apk
。在运行时,字节码由libRSDriverArm.so
编译为可执行二进制文件。
有时Eclipse会忘记删除/更新这些字节码文件。在您的情况下,它仍然有一个构建PROJECT/res/raw/RSAttempt.bc
的方法,该方法依赖于RSAttempt.rs
。它抛出了这个错误,因为它找不到依赖项,因为你删除了它。重新启动和打开Eclipse可能会触发一个项目清理,偶尔(但不总是D :)删除那些字节码文件。
在我的例子中,Eclipse刚刚停止编译新的字节码文件。这导致了段错误@ 0xdeadbaad
,Calling invoke on bad script
和其他无用/无人听说过的错误,因为我试图从(正确重新生成的)java反射类调用函数旧版本的字节码。建立时间:沉默。
现在我使用shell脚本定期删除整个工作区中的*.bc
。