无法使“新轨道"正常工作 [英] Can't get 'rails new' to work
问题描述
我很想接触Ruby on Rails(OSX 10.7).但是首先我需要安装它.现在,我已经花了9个小时尝试使其正常工作,但是在尝试创建新项目时,它总是会失败:
I'm a n00b eager to get my hands on Ruby on Rails (OSX 10.7). But first I need to install it. Now I've spend 9 hours trying to get it to work but it always fails when I try to create a new project:
$ 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的问题.
I suspect it is the https access that is screwing up. Some say it is some problem with openssl.
$ openssl version
OpenSSL 0.9.8r 8 Feb 2011
显然,最好的答案是"OpenSSL 1.0.1",但我不知道如何全局更新Openssl.忽略这一点,我确实重新安装了ruby,执行以下操作:
Apparently, the best answer is 'OpenSSL 1.0.1' but I have no clue how to update Openssl globally. Ignoring this I did reinstall ruby doing the following:
$ rvm remove 1.9.3
$ brew install openssl
$ rvm install 1.9.3 --with-openssl-dir=`brew --prefix openssl`
我不知道brew是做什么的,但是似乎要安装openssl并将其藏在某个目录中.反正.无论我做什么,我总是会遇到相同的错误:
I have no clue what brew does but it seems to install openssl and tuck it away in a directory somewhere. Anyway. Whatever I do I always end up with the same error:
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.
我重新安装了整个chabang.结果相同.这是日志:
I reinstalled the whole chabang. Same result. Here is the log:
删除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)
Intalling Ruby 1.9.3 (with 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之后,我转到目录并运行安装程序.
Installing RubyGems just in case. Afer downloading RubyGems through GIT I move to the directory and run setup.
$ 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(如果没有,它会抱怨)
Installing json (it complains if I don't)
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
最后.让我们创建一个新项目
Finally. Let's create a new project
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$
相同的结果.怎么了?
推荐答案
我会在这里尝试两件事.
I would try two things here.
首先,确保从正确的位置运行Rails命令:听起来您使用的不是正确版本的Rails.哪个轨道
应该向您显示该文件是从RVM安装中获取的:如果不是,则需要确保您 rvm使用1.9.3
,然后尝试再次 gem安装导轨
.
First, ensure that the Rails command is running from the correct location: it sounds possible that you're not using the correct version of Rails. which rails
should show you that the file is sourced from inside your RVM installation: if it isn't, you need to make sure you rvm use 1.9.3
and then try gem install rails
again.
第二,因为此错误听起来类似于在较早版本的gem中发生的错误,所以我将尝试更新您的gem二进制文件.首先,就像在Rails中一样,键入哪个gem
以确保您使用的是RVM gem,而不是系统gem.然后,在再次捆绑安装之前,先进行 gem更新--system
.
Second, because this error sounds similar to an error that occurred in an older version of gem, I would try updating your gem binary. First, just like in Rails, type which gem
to ensure that you're using the RVM gem, not the system gem. Then, do gem update --system
before you bundle install again.
这篇关于无法使“新轨道"正常工作的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!