0

Mac OSX 10.7.4 で Rails インストーラーを使用して rails env をインストールしました。

「rails new」コマンドを使用してプロジェクトを作成します。

「rails server」コマンドを実行しようとすると、次のメッセージが表示されます。

/usr/local/rvm/gems/ruby-1.9.3-p194/gems/rails-2.3.14/lib/rails_generator/options.rb:32:in `default_options': undefined method `write_inheritable_attribute' for Rails::Generator::Base:Class (NoMethodError)
from /usr/local/rvm/gems/ruby-1.9.3-p194/gems/rails-2.3.14/lib/rails_generator/base.rb:90:in `<class:Base>'
from /usr/local/rvm/gems/ruby-1.9.3-p194/gems/rails-2.3.14/lib/rails_generator/base.rb:85:in `<module:Generator>'
from /usr/local/rvm/gems/ruby-1.9.3-p194/gems/rails-2.3.14/lib/rails_generator/base.rb:48:in `<module:Rails>'
from /usr/local/rvm/gems/ruby-1.9.3-p194/gems/rails-2.3.14/lib/rails_generator/base.rb:6:in `<top (required)>'
from /usr/local/rvm/rubies/ruby-1.9.3-p194/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:55:in `require'
from /usr/local/rvm/rubies/ruby-1.9.3-p194/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:55:in `require'
from /usr/local/rvm/gems/ruby-1.9.3-p194/gems/rails-2.3.14/lib/rails_generator.rb:37:in `<top (required)>'
from /usr/local/rvm/rubies/ruby-1.9.3-p194/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:55:in `require'
from /usr/local/rvm/rubies/ruby-1.9.3-p194/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:55:in `require'
from /usr/local/rvm/gems/ruby-1.9.3-p194/gems/rails-2.3.14/bin/rails:15:in `<top (required)>'
from /usr/local/rvm/gems/ruby-1.9.3-p194/bin/rails:23:in `load'
from /usr/local/rvm/gems/ruby-1.9.3-p194/bin/rails:23:in `<main>'

$ ruby​​ -v と $ gem -v を実行すると、それぞれ「ruby 1.9.3p194」と「1.8.24」が表示されます。ここで何が欠けていますか?このサーバーを実行するにはどうすればよいですか?

4

2 に答える 2

4

Rails 2.3 で Rails 3.x コマンドを使用しようとしているようです。3.0 より前では、サーバー スクリプトを使用する必要があります。

アプリケーション ディレクトリ内から次を実行します。

./script/server 
于 2012-09-02T15:34:57.020 に答える
0

Rails を gem としてインストールしますgem install rails。rvm を使用しているため、実行しようとしたときに、ここに表示されるフォルダー パスは rails 2.3.4 を示していますrails server。gem ファイルで rails のバージョンを確認/変更してから、bundle install を実行します。

于 2012-09-02T15:41:49.060 に答える