我在这里使用ruby on rails教程:
http://ruby.railstutorial.org/chapters/modeling-and-viewing-users-one#top
我在使用bundle exec rake db:migrate命令时遇到了问题。它说
无法在任何来源中找到json-1.6.3。
所以我使用了gem install json -v '1.6.3'
命令,一切似乎都运行正常。然后我再次尝试运行bundle exec rake db:migrate
,但它失败了同样的消息,找不到json。
我相信问题的一个线索是当我使用命令bundle install
时,在尝试安装json 1.6.3时会弹出此消息:
Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension.
/Users/chuckyuan/.rvm/rubies/ruby-1.9.2-p290/bin/ruby extconf.rb
creating Makefile
make
Makefile:148: *** target pattern contains no `%'. Stop.
Gem files will remain installed in /Users/chuckyuan/Documents/rails_projects/sample_app/db:migrate/ruby/1.9.1/gems/json-1.6.3 for inspection.
Results logged to /Users/chuckyuan/Documents/rails_projects/sample_app/db:migrate/ruby/1.9.1/gems/json-1.6.3/ext/json/ext/parser/gem_make.out
An error occured while installing json (1.6.3), and Bundler cannot continue.
Make sure that `gem install json -v '1.6.3'` succeeds before bundling.
当我创建一个新的rails项目并运行相同的命令时,一切正常。在此先感谢您的帮助。
答案 0 :(得分:0)
在Ruby 1.8.7上,您需要安装gem。但是,在Ruby 1.9.2中,json gem与核心Ruby发行版捆绑在一起。所以,如果你使用的是1.9.2,你可能都已经完成了。如果您使用1.8.7,则需要安装gem。