Ruby gem无法加载

Ruby gem无法加载,ruby,rubygems,Ruby,Rubygems,我已从命令行安装了gem: sudo gem install jalalidate gem说它已经安装了: $ gem list jalalidate *** LOCAL GEMS *** jalalidate (0.3.2) 并且可以加载: ruby -rubygems -e 'require "jalalidate"' # output is empty, (success?) 虽然当我尝试在Rakefile中包含此宝石时,rake失败了: # Rakefile: require "

我已从命令行安装了gem:

sudo gem install jalalidate
gem说它已经安装了:

$ gem list jalalidate
*** LOCAL GEMS ***

jalalidate (0.3.2)
并且可以加载:

ruby -rubygems -e 'require "jalalidate"' # output is empty, (success?)
虽然当我尝试在Rakefile中包含此宝石时,rake失败了:

# Rakefile:
require "rubygems"
require "bundler/setup"
require "stringex"
require "jalalidate"

# Terminal:
$ rake new_post["title"]
rake aborted!
cannot load such file -- jalalidate

(See full trace by running task with --trace)
注:

  • 我正在使用octopress博客系统,我正在尝试将由
    Time.now.strftime(“%Y-%m-%d%H:%m”)生成的日期转换为Jalali日历系统(
    JalaliDate.new(Date.today).strftime(“%Y-%m-%d”)
  • 我对Ruby不熟悉
更新:

$ gem env
RubyGems Environment:
  - RUBYGEMS VERSION: 1.8.11
  - RUBY VERSION: 1.9.3 (2011-10-30 patchlevel 0) [x86_64-linux]
  - INSTALLATION DIRECTORY: /var/lib/gems/1.9.1
  - RUBY EXECUTABLE: /usr/bin/ruby1.9.1
  - EXECUTABLE DIRECTORY: /usr/local/bin
  - RUBYGEMS PLATFORMS:
    - ruby
    - x86_64-linux
  - GEM PATHS:
     - /var/lib/gems/1.9.1
     - /home/soroush/.gem/ruby/1.9.1
  - GEM CONFIGURATION:
     - :update_sources => true
     - :verbose => true
     - :benchmark => false
     - :backtrace => false
     - :bulk_threshold => 1000
  - REMOTE SOURCES:
     - http://rubygems.org/
了解为什么将sudo与gem命令一起使用是一个坏主意


我建议尝试在没有sudo的情况下安装gem:
gem install jalalidate
在尝试要求
jalalidate
之前,您的
Rakefile
已经
要求“bundler/setup”
了,这意味着您正在使用
Gemfile
,这限制了gem(和版本)的可用性

为了在项目中使用gem,添加行

gem "jalalidate"

对于
Gemfile

的kicks,你的
ls$GEM_PATH/gems
say你也用sudo运行
rake
命令吗?我没有
$GEM_PATH
环境,如果你在sudo下运行rake命令对你有效吗?@Psylone否。AFAIK它不应该作为sudoThanks运行:)添加
GEM“jalalidate”
to
gemfile
工作正常。我想我得学点红宝石