2

私は、Ruby on Rails (OSX 10.7) を手に入れたいと思っています。しかし、最初にインストールする必要があります。今、私はそれを機能させるために9時間を費やしましたが、新しいプロジェクトを作成しようとすると常に失敗します:

$ rails new /Users/tom/Documents/14-Utveckling/WhichTerminal 
   exist  
identical  README.rdoc
identical  Rakefile
identical  config.ru
identical  .gitignore
 conflict  Gemfile
Overwrite /Users/tom/Documents/14-Utveckling/WhichTerminal/Gemfile? (enter "h" for help) [Ynaqdh] Y
   force  Gemfile
   exist  app
identical  app/assets/images/rails.png
identical  app/assets/javascripts/application.js
identical  app/assets/stylesheets/application.css
identical  app/controllers/application_controller.rb
identical  app/helpers/application_helper.rb
    exist  app/mailers
    exist  app/models
identical  app/views/layouts/application.html.erb
identical  app/mailers/.gitkeep
identical  app/models/.gitkeep
    exist  config
 identical  config/routes.rb
identical  config/application.rb
identical  config/environment.rb
   exist  config/environments
identical  config/environments/development.rb
identical  config/environments/production.rb
identical  config/environments/test.rb
    exist  config/initializers
identical  config/initializers/backtrace_silencers.rb
identical  config/initializers/inflections.rb
identical  config/initializers/mime_types.rb
 conflict  config/initializers/secret_token.rb
Overwrite /Users/tom/Documents/14-  Utveckling/WhichTerminal/config/initializers/secret_token.rb? (enter "h" for help) [Ynaqdh] Y
    force  config/initializers/secret_token.rb
 conflict  config/initializers/session_store.rb
Overwrite /Users/tom/Documents/14-Utveckling/WhichTerminal/config/initializers/session_store.rb? (enter "h" for help) [Ynaqdh] Y
    force  config/initializers/session_store.rb
 conflict  config/initializers/wrap_parameters.rb
 Overwrite /Users/tom/Documents/14-Utveckling/WhichTerminal/config/initializers/wrap_parameters.rb? (enter "h" for help) [Ynaqdh] Y
    force  config/initializers/wrap_parameters.rb
    exist  config/locales
identical  config/locales/en.yml
identical  config/boot.rb
identical  config/database.yml
    exist  db
 conflict  db/seeds.rb
Overwrite /Users/tom/Documents/14-Utveckling/WhichTerminal/db/seeds.rb? (enter "h" for help) [Ynaqdh] Y
   force  db/seeds.rb
   exist  doc
identical  doc/README_FOR_APP
    exist  lib
    exist  lib/tasks
identical  lib/tasks/.gitkeep
    exist  lib/assets
identical  lib/assets/.gitkeep
    exist  log
identical  log/.gitkeep
    exist  public
identical  public/404.html
identical  public/422.html
identical  public/500.html
identical  public/favicon.ico
identical  public/index.html
identical  public/robots.txt
    exist  script
identical  script/rails
    exist  test/fixtures
identical  test/fixtures/.gitkeep
    exist  test/functional
identical  test/functional/.gitkeep
    exist  test/integration
identical  test/integration/.gitkeep
    exist  test/unit
identical  test/unit/.gitkeep
identical  test/performance/browsing_test.rb
identical  test/test_helper.rb
    exist  tmp/cache
    exist  tmp/cache/assets
    exist  vendor/assets/javascripts
identical  vendor/assets/javascripts/.gitkeep
    exist  vendor/assets/stylesheets
identical  vendor/assets/stylesheets/.gitkeep
    exist  vendor/plugins
identical  vendor/plugins/.gitkeep
      run  bundle install
Enter your password to install the bundled RubyGems to your system: 
Fetching gem metadata from https://rubygems.org/.........

NoMethodError: private method `open' called for Gem::Package:Class
An error occured while installing rake (0.9.2.2), and Bundler cannot continue.
Make sure that `gem install rake -v '0.9.2.2'` succeeds before bundling.

私の理論:

めちゃくちゃになっているのはhttpsアクセスだと思います。openssl に問題があると言う人もいます。

$ openssl version
OpenSSL 0.9.8r 8 Feb 2011

どうやら、最良の答えは「OpenSSL 1.0.1」ですが、Openssl をグローバルに更新する方法がわかりません。これを無視して、次のようにして ruby​​ を再インストールしました。

$ rvm remove 1.9.3
$ brew install openssl
$ rvm install 1.9.3 --with-openssl-dir=`brew --prefix openssl`

brew が何をするのかわかりませんが、openssl をインストールしてどこかのディレクトリに隠しているようです。ともかく。私が何をしても、私はいつも同じエラーになります:

Fetching gem metadata from https://rubygems.org/.........
NoMethodError: private method `open' called for Gem::Package:Class
An error occured while installing rake (0.9.2.2), and Bundler cannot continue.

チャバン全体を再インストールしました。同じ結果です。ログは次のとおりです。

rvm を削除

$ rvm implode
[...]
rvm has been fully removed. Note you may need to manually remove /etc/rvmrc and ~/.rvmrc if they exist still.
$ gem uninstall rvm
$ which ruby
/usr/bin/ruby

RVM のインストール

$ curl -L get.rvm.io | bash -s stable
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  9248  100  9248    0     0   2403      0  0:00:03  0:00:03 --:--:-- 27939
Downloading RVM from wayneeseguin branch stable
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 1023k  100 1023k    0     0  85026      0  0:00:12  0:00:12 --:--:-- 94532

Installing RVM to /Users/tom/.rvm/
    RVM PATH line found in /Users/tom/.bashrc /Users/tom/.zshrc.
    RVM sourcing line found in /Users/tom/.bash_login /Users/tom/.zlogin.

# RVM:  Shell scripts enabling management of multiple ruby environments.
# RTFM: https://rvm.io/
# HELP: http://webchat.freenode.net/?channels=rvm (#rvm on irc.freenode.net)
# Cheatsheet: http://cheat.errtheblog.com/s/rvm/
# Screencast: http://screencasts.org/episodes/how-to-use-rvm

# In case of any issues read output of 'rvm requirements' and/or 'rvm notes'

Installation of RVM in /Users/tom/.rvm/ is almost complete:

  * To start using RVM you need to run `source /Users/tom/.rvm/scripts/rvm`
    in all your open shell windows, in rare cases you need to reopen all shell windows.

# Tom Eriksen,
#
#   Thank you for using RVM!
#   I sincerely hope that RVM helps to make your life easier and more enjoyable!!!
#
# ~Wayne


rvm 1.13.8 (stable) by Wayne E. Seguin <wayneeseguin@gmail.com>, Michal Papis <mpapis@gmail.com> [https://rvm.io/]

Ruby 1.9.3 のインストール (openssl 1.0.1 を使用)

$ rvm install 1.9.3 --with-openssl-dir=`brew --prefix openssl`
Fetching yaml-0.1.4.tar.gz to /Users/tom/.rvm/archives
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  460k  100  460k    0     0  65747      0  0:00:07  0:00:07 --:--:--  116k
Extracting yaml-0.1.4.tar.gz to /Users/tom/.rvm/src
Configuring yaml in /Users/tom/.rvm/src/yaml-0.1.4.
Compiling yaml in /Users/tom/.rvm/src/yaml-0.1.4.
Installing yaml to /Users/tom/.rvm/usr
Installing Ruby from source to: /Users/tom/.rvm/rubies/ruby-1.9.3-p194, this may take a while depending on your cpu(s)...

ruby-1.9.3-p194 - #fetching 
ruby-1.9.3-p194 - #downloading ruby-1.9.3-p194, this may take a while depending on your connection...
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 9610k  100 9610k    0     0   193k      0  0:00:49  0:00:49 --:--:--  212k
ruby-1.9.3-p194 - #extracting ruby-1.9.3-p194 to /Users/tom/.rvm/src/ruby-1.9.3-p194
ruby-1.9.3-p194 - #extracted to /Users/tom/.rvm/src/ruby-1.9.3-p194
ruby-1.9.3-p194 - #configuring 
ruby-1.9.3-p194 - #compiling 
ruby-1.9.3-p194 - #installing 
Retrieving rubygems-1.8.24
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  371k  100  371k    0     0   355k      0  0:00:01  0:00:01 --:--:--  446k
Extracting rubygems-1.8.24 ...
Removing old Rubygems files...
Installing rubygems-1.8.24 for ruby-1.9.3-p194 ...
Installation of rubygems completed successfully.
ruby-1.9.3-p194 - adjusting #shebangs for (gem irb erb ri rdoc testrb rake).
ruby-1.9.3-p194 - #importing default gemsets (/Users/tom/.rvm/gemsets/)
Install of ruby-1.9.3-p194 - #complete 
$ which ruby
/Users/tom/.rvm/rubies/ruby-1.9.3-p194/bin/ruby
$ which gem
/Users/tom/.rvm/rubies/ruby-1.9.3-p194/bin/gem
$ which rails
/usr/bin/rails

念のためRubyGemsをインストール。GIT を使用して RubyGems をダウンロードした後、ディレクトリに移動してセットアップを実行します。

$ cd /Users/tom/Library/Developer/rubygems 
Toms-dator-2:rubygems tom$ ruby setup.rb 
RubyGems 2.0.a installed



------------------------------------------------------------------------------

RubyGems installed the following executables:
    /Users/tom/.rvm/rubies/ruby-1.9.3-p194/bin/gem

rubygems$ gem update --system
Latest version currently installed. Aborting.

json のインストール (そうしないと文句を言う)

rubygems$ gem install json
Fetching: json-1.7.3.gem (100%)
Building native extensions.  This could take a while...
Successfully installed json-1.7.3
Installing ri documentation for json-1.7.3
Installing darkfish documentation for json-1.7.3
1 gem installed

Rubygems$ which gem
/Users/tom/.rvm/rubies/ruby-1.9.3-p194/bin/gem

レールの取り付け

Rubygems$ gem install rails
Fetching: i18n-0.6.0.gem (100%)
Successfully installed i18n-0.6.0
Fetching: multi_json-1.3.5.gem (100%)
Successfully installed multi_json-1.3.5
Fetching: activesupport-3.2.3.gem (100%)
Successfully installed activesupport-3.2.3
Fetching: builder-3.0.0.gem (100%)
Successfully installed builder-3.0.0
Fetching: activemodel-3.2.3.gem (100%)
Successfully installed activemodel-3.2.3
Fetching: rack-1.4.1.gem (100%)
Successfully installed rack-1.4.1
Fetching: rack-cache-1.2.gem (100%)
Successfully installed rack-cache-1.2
Fetching: rack-test-0.6.1.gem (100%)
Successfully installed rack-test-0.6.1
Fetching: journey-1.0.3.gem (100%)
Successfully installed journey-1.0.3
Fetching: hike-1.2.1.gem (100%)
Successfully installed hike-1.2.1
Fetching: tilt-1.3.3.gem (100%)
Successfully installed tilt-1.3.3
Fetching: sprockets-2.1.3.gem (100%)
Successfully installed sprockets-2.1.3
Fetching: erubis-2.7.0.gem (100%)
Successfully installed erubis-2.7.0
Fetching: actionpack-3.2.3.gem (100%)
Successfully installed actionpack-3.2.3
Fetching: arel-3.0.2.gem (100%)
Successfully installed arel-3.0.2
Fetching: tzinfo-0.3.33.gem (100%)
Successfully installed tzinfo-0.3.33
Fetching: activerecord-3.2.3.gem (100%)
Successfully installed activerecord-3.2.3
Fetching: activeresource-3.2.3.gem (100%)
Successfully installed activeresource-3.2.3
Fetching: mime-types-1.18.gem (100%)
Successfully installed mime-types-1.18
Fetching: polyglot-0.3.3.gem (100%)
Successfully installed polyglot-0.3.3
Fetching: treetop-1.4.10.gem (100%)
Successfully installed treetop-1.4.10
Fetching: mail-2.4.4.gem (100%)
Successfully installed mail-2.4.4
Fetching: actionmailer-3.2.3.gem (100%)
Successfully installed actionmailer-3.2.3
Fetching: thor-0.14.6.gem (100%)
Successfully installed thor-0.14.6
Fetching: rack-ssl-1.3.2.gem (100%)
Successfully installed rack-ssl-1.3.2
Fetching: rdoc-3.12.gem (100%)
Depending on your version of ruby, you may need to install ruby rdoc/ri data:

<= 1.8.6 : unsupported
 = 1.8.7 : gem install rdoc-data; rdoc-data --install
 = 1.9.1 : gem install rdoc-data; rdoc-data --install
>= 1.9.2 : nothing to do! Yay!
Successfully installed rdoc-3.12
Fetching: railties-3.2.3.gem (100%)
Successfully installed railties-3.2.3
Fetching: rails-3.2.3.gem (100%)
Successfully installed rails-3.2.3
Installing ri documentation for i18n-0.6.0
Installing darkfish documentation for i18n-0.6.0
Installing ri documentation for multi_json-1.3.5
Installing darkfish documentation for multi_json-1.3.5
Installing ri documentation for activesupport-3.2.3
Installing darkfish documentation for activesupport-3.2.3
unable to convert "\xF1" from ASCII-8BIT to UTF-8 for README, skipping
unable to convert "\xF1" from ASCII-8BIT to UTF-8 for README.rdoc, skipping
unable to convert "\xF1" from ASCII-8BIT to UTF-8 for test/performance.rb, skipping
Installing ri documentation for builder-3.0.0
Installing darkfish documentation for builder-3.0.0
Installing ri documentation for activemodel-3.2.3
Installing darkfish documentation for activemodel-3.2.3
unable to convert "\x89" from ASCII-8BIT to UTF-8 for test/multipart/binary, skipping
Installing ri documentation for rack-1.4.1
Installing darkfish documentation for rack-1.4.1
Installing ri documentation for rack-cache-1.2
Installing darkfish documentation for rack-cache-1.2
Installing ri documentation for rack-test-0.6.1
Installing darkfish documentation for rack-test-0.6.1
Installing ri documentation for journey-1.0.3
Installing darkfish documentation for journey-1.0.3
Installing ri documentation for hike-1.2.1
Installing darkfish documentation for hike-1.2.1
Installing ri documentation for tilt-1.3.3
Installing darkfish documentation for tilt-1.3.3
Installing ri documentation for sprockets-2.1.3
Installing darkfish documentation for sprockets-2.1.3
Installing ri documentation for erubis-2.7.0
Installing darkfish documentation for erubis-2.7.0
Installing ri documentation for actionpack-3.2.3
Installing darkfish documentation for actionpack-3.2.3
Installing ri documentation for arel-3.0.2
Installing darkfish documentation for arel-3.0.2
Installing ri documentation for tzinfo-0.3.33
Installing darkfish documentation for tzinfo-0.3.33
Installing ri documentation for activerecord-3.2.3
Installing darkfish documentation for activerecord-3.2.3
Installing ri documentation for activeresource-3.2.3
Installing darkfish documentation for activeresource-3.2.3
Installing ri documentation for mime-types-1.18
Installing darkfish documentation for mime-types-1.18
Installing ri documentation for polyglot-0.3.3
Installing darkfish documentation for polyglot-0.3.3
Installing ri documentation for treetop-1.4.10
Installing darkfish documentation for treetop-1.4.10
Installing ri documentation for mail-2.4.4
Installing darkfish documentation for mail-2.4.4
Installing ri documentation for actionmailer-3.2.3
Installing darkfish documentation for actionmailer-3.2.3
Installing ri documentation for thor-0.14.6
Installing darkfish documentation for thor-0.14.6
Installing ri documentation for rack-ssl-1.3.2
Installing darkfish documentation for rack-ssl-1.3.2
Installing ri documentation for rdoc-3.12
Installing darkfish documentation for rdoc-3.12
Installing ri documentation for railties-3.2.3
Installing darkfish documentation for railties-3.2.3
Installing ri documentation for rails-3.2.3
Installing darkfish documentation for rails-3.2.3
28 gems installed

Rubygems$ which rails
/Users/tom/.rvm/gems/ruby-1.9.3-p194/bin/rails

ついに。新しいプロジェクトを作成しましょう

Rubygems$ rails new /Users/tom/Documents/WhichTerminal 
       exist  
      create  README.rdoc
      create  Rakefile
      create  config.ru
   identical  .gitignore
      create  Gemfile
      create  app
      create  app/assets/images/rails.png
      create  app/assets/javascripts/application.js
      create  app/assets/stylesheets/application.css
      create  app/controllers/application_controller.rb
      create  app/helpers/application_helper.rb
      create  app/mailers
      create  app/models
      create  app/views/layouts/application.html.erb
      create  app/mailers/.gitkeep
      create  app/models/.gitkeep
      create  config
      create  config/routes.rb
      create  config/application.rb
      create  config/environment.rb
      create  config/environments
      create  config/environments/development.rb
      create  config/environments/production.rb
      create  config/environments/test.rb
      create  config/initializers
      create  config/initializers/backtrace_silencers.rb
      create  config/initializers/inflections.rb
      create  config/initializers/mime_types.rb
      create  config/initializers/secret_token.rb
      create  config/initializers/session_store.rb
      create  config/initializers/wrap_parameters.rb
      create  config/locales
      create  config/locales/en.yml
      create  config/boot.rb
      create  config/database.yml
      create  db
      create  db/seeds.rb
      create  doc
      create  doc/README_FOR_APP
      create  lib
      create  lib/tasks
      create  lib/tasks/.gitkeep
      create  lib/assets
      create  lib/assets/.gitkeep
      create  log
      create  log/.gitkeep
      create  public
      create  public/404.html
      create  public/422.html
      create  public/500.html
      create  public/favicon.ico
      create  public/index.html
      create  public/robots.txt
      create  script
      create  script/rails
      create  test/fixtures
      create  test/fixtures/.gitkeep
      create  test/functional
      create  test/functional/.gitkeep
      create  test/integration
      create  test/integration/.gitkeep
      create  test/unit
      create  test/unit/.gitkeep
      create  test/performance/browsing_test.rb
      create  test/test_helper.rb
      create  tmp/cache
      create  tmp/cache/assets
      create  vendor/assets/javascripts
      create  vendor/assets/javascripts/.gitkeep
      create  vendor/assets/stylesheets
      create  vendor/assets/stylesheets/.gitkeep
      create  vendor/plugins
      create  vendor/plugins/.gitkeep
         run  bundle install
Fetching gem metadata from https://rubygems.org/.........

NoMethodError: private method `open' called for Gem::Package:Class
An error occured while installing rake (0.9.2.2), and Bundler cannot continue.
Make sure that `gem install rake -v '0.9.2.2'` succeeds before bundling.
Rubygems$ 

同じ結果です。どうしたの?

4

5 に答える 5

5

ここで 2 つのことを試してみます。

まず、Rails コマンドが正しい場所から実行されていることを確認します。Rails の正しいバージョンを使用していない可能性があります。ファイルが RVM インストール内から供給されていることが表示されるはずです。そうでない場合は、確認してから再試行which railsする必要があります。rvm use 1.9.3gem install rails

次に、このエラーは古いバージョンの gem で発生したエラーと似ているため、gem バイナリを更新してみます。まず、Rails の場合と同様にwhich gem、システム gem ではなく RVM gem を使用していることを確認するために入力します。次に、gem update --system再度バンドル インストールする前に実行します。

于 2012-05-24T16:20:11.807 に答える
4

バンドラーを更新する必要があることが判明したため、同じ問題が発生しました。

gem インストールバンドラー

于 2013-03-01T10:19:41.273 に答える
1

古い質問ですが、今日この問題が発生しています。大きなハンマーのアプローチ:

sudo su
rails new my_proj
rm -rf my_proj
exit
rails new my_proj

root の許可が増えると、エラーをスローすることなくすべてのバンドルをインストールできます。次に、プロジェクトを削除し、通常の特権ユーザーに戻り、プロジェクトを再作成します。root によってインストールされたすべてのバンドルで、「new」コマンドが正常に実行されました。

于 2013-03-16T22:31:39.837 に答える
0

私は同じ問題を抱えていて、Homebrewを更新することでそれを解決しました

brew update

また、設定パネルの[Xcodeダウンロード]タブからコマンドラインツールを更新します。

それがまだ答えを探している人々に役立つことを願っています。

于 2013-03-05T10:32:02.113 に答える
0

このガイドは機能することが判明しました:

http://tecparatodos.com/2011/07/24/installing-ruby-on-rails-on-mac-os-x-lion/

私の問題は、XCode が正しく設定されていなかったことだと思います。このガイドに従えば、すべてうまくいくでしょう。

于 2012-05-27T13:59:53.270 に答える