我重新安装了我的操作系统两次,并完成了大约10个小时的调试。我很茫然。
我正在运行Linux Mint 14(基本上是Ubuntu)并且遇到了运行32位和64位的相同问题。
我从64位开始,在安装32位库之后,得到了与我现在使用的32位完全相同的错误。
我在以前编写的源代码上运行了脚本(几个月前就已经运行了),我也在虚拟源上运行它(只运行rhogen store
然后将它提供给rake命令)
如果我搜索此错误,Google上只有一个结果是my post on the rhomobile Google group。由于这还没有产生任何结果,我想我会在这里重新考虑,看看是否有人有任何见解。
为了完整性,this是我用于正确安装Rhodes的指南。 (官方文档是可怕的!)
以下是失败的rake run:android
:
rm -rf /media/radnadz/Methuselah/Programming/Rhodes/store/bin/target/android/store-tmp.apk
** Execute run:android:emulator
rake aborted!
undefined method `rm_f' for AndroidTools:Module
/var/lib/gems/1.9.1/gems/rhodes-3.5.1.12/platform/android/build/android_tools.rb:211:in `run_emulator'
/var/lib/gems/1.9.1/gems/rhodes-3.5.1.12/platform/android/build/android.rake:1971:in `block (3 levels) in <top (required)>'
/var/lib/gems/1.9.1/gems/rake-10.0.2/lib/rake/task.rb:227:in `call'
/var/lib/gems/1.9.1/gems/rake-10.0.2/lib/rake/task.rb:227:in `block in execute'
/var/lib/gems/1.9.1/gems/rake-10.0.2/lib/rake/task.rb:222:in `each'
/var/lib/gems/1.9.1/gems/rake-10.0.2/lib/rake/task.rb:222:in `execute'
/var/lib/gems/1.9.1/gems/rake-10.0.2/lib/rake/task.rb:166:in `block in invoke_with_call_chain'
/usr/lib/ruby/1.9.1/monitor.rb:211:in `mon_synchronize'
/var/lib/gems/1.9.1/gems/rake-10.0.2/lib/rake/task.rb:159:in `invoke_with_call_chain'
/var/lib/gems/1.9.1/gems/rake-10.0.2/lib/rake/task.rb:152:in `invoke'
/var/lib/gems/1.9.1/gems/rake-10.0.2/lib/rake/application.rb:141:in `invoke_task'
/var/lib/gems/1.9.1/gems/rake-10.0.2/lib/rake/application.rb:99:in `block (2 levels) in top_level'
/var/lib/gems/1.9.1/gems/rake-10.0.2/lib/rake/application.rb:99:in `each'
/var/lib/gems/1.9.1/gems/rake-10.0.2/lib/rake/application.rb:99:in `block in top_level'
/var/lib/gems/1.9.1/gems/rake-10.0.2/lib/rake/application.rb:108:in `run_with_threads'
/var/lib/gems/1.9.1/gems/rake-10.0.2/lib/rake/application.rb:93:in `top_level'
/var/lib/gems/1.9.1/gems/rake-10.0.2/lib/rake/application.rb:71:in `block in run'
/var/lib/gems/1.9.1/gems/rake-10.0.2/lib/rake/application.rb:158:in `standard_exception_handling'
/var/lib/gems/1.9.1/gems/rake-10.0.2/lib/rake/application.rb:68:in `run'
/var/lib/gems/1.9.1/gems/rake-10.0.2/bin/rake:37:in `<top (required)>'
/usr/local/bin/rake:23:in `load'
/usr/local/bin/rake:23:in `<main>'
Tasks: TOP => run:android:emulator
答案 0 :(得分:3)
答案非常简单(如果你知道在哪里看)。
如堆栈跟踪所示,问题源自/var/lib/gems/1.9.1/gems/rhodes-3.5.1.12/platform/android/build/android_tools.rb
的第211行。
如果您将该行从rm_f $applog_path if !$applog_path.nil?
更改为FileUtils.rm_f $applog_path if !$applog_path.nil?
,则问题就会得到解决。
感谢Alexey在rhomobile Google Group上寻求解决方案!