【发布时间】:2011-01-12 21:19:43
【问题描述】:
我最近尝试在 Ubuntu 上使用 RVM。
一切似乎都很顺利……除了一件事。我正在开发我的一个 gem,它有一个放在自己的 bin/ 目录中的脚本,所有的 gemspec 和东西都是由 Jeweler 生成的。
bin/mygem 文件包含以下代码:-
#!/usr/bin/env ruby
begin
require 'mygem'
rescue LoadError
require 'rubygems'
require 'mygem'
end
app = MyGem::Application.new
app.run
这在 Ruby 的系统版本上运行良好。
现在...最近我已经转移到 RVM 以更好地管理我的 ruby 版本,但现在我的 gem 似乎无法正常工作。
首先我这样做:-
rvm 1.9.2
然后我这样做:-
rvm 1.9.2 gem install mygem
安装良好,除了...当我尝试为 mygem 运行命令时
mygem
我只是得到以下异常:-
daniel@daniel-VirtualBox:~$ mygem
<internal:lib/rubygems/custom_require>:29:in `require': no such file to load -- mygem (LoadError)
from <internal:lib/rubygems/custom_require>:29:in `require'
from /home/daniel/.rvm/gems/ruby-1.9.2-p136/gems/mygem-0.1.4/bin/mygem:2:in `<top (required)>'
from /home/daniel/.rvm/gems/ruby-1.9.2-p136/bin/mygem:19:in `load'
from /home/daniel/.rvm/gems/ruby-1.9.2-p136/bin/mygem:19:in `<main>'mygem
注意:我在 MAC OSX 上有一个类似的 RVM 设置,我的 gem 在那里工作正常,所以我认为这可能与 Ubuntu 有关?
【问题讨论】:
-
检查
rvm info并确保所有 PATH、Ruby 和 Gem 信息都通过了健全性检查。