我正在尝试执行需要重置数据库的Capistrano任务,但是当我遇到特定的代码行时,我收到标题中说明的错误。以下是完整的错误消息:
RAILS_ENV=testing script/runner 'Account.all.each(&:reindex_person)' exit status: 1
cd /var/local/openhub/current && RAILS_ENV=testing script/runner
'Account.all.each(&:reindex_person)' stdout: Nothing written
cd /var/local/openhub/current && RAILS_ENV=testing script/runner
'Account.all.each(&:reindex_person)' stderr:
/usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in
`require': cannot load such file -- script/../config/boot (LoadError)
正如您在消息中看到的那样,错误由script/runner
命令触发。为了更好地理解我遇到的问题,我已经转向这三个堆栈溢出问题,大致相同的错误:
我正在使用
根据问题中的建议,似乎问题是在操作系统中安装了多个版本的ruby,并且通过删除它们直到剩下一个,问题可以解决。那不是我的情况。当我运行which -a ruby
时,我得到输出/usr/bin/ruby
,我只安装了ruby 1.9.3。
然而,我注意到我的系统中有点奇怪。 /usr/bin/ruby1.9.1
这一定是我遇到的错误。不一致是我认为导致错误的原因,但我很奇怪,因为我能够运行script/server
和script/console
就好了。
对于这个解决方案,据我所知,我使用的系统没有rvm。我是否需要卸载ruby并重新安装1.9.3版本?我正在努力更好地理解我遇到的问题,因为我现在仍然是一名新手程序员,而且我对于在没有完全理解内容的情况下弄乱内部构件来打破我的整个测试系统犹豫不决发生。非常感谢帮助。感谢。