質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Ruby on Rails 5

Ruby on Rails 5は、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Q&A

2回答

8637閲覧

railsのバージョン確認できない

退会済みユーザー

退会済みユーザー

総合スコア0

Ruby on Rails 5

Ruby on Rails 5は、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

0グッド

0クリップ

投稿2018/03/10 09:53

railsの勉強を始めたいと思い,railsの環境を整えています.
が,全く進めません.

以下,現状です.

$ ruby -v ruby 2.5.0p0 $ rails -v /Library/Ruby/Site/2.3.0/rubygems/dependency.rb:312:in `to_specs': Could not find 'nokogiri' (>= 1.5.9) - did find: [nokogiri-1.5.6] (Gem::MissingSpecVersionError) Checked in 'GEM_PATH=/Users/muraseyuri/.gem/ruby/2.3.0:/Library/Ruby/Gems/2.3.0:/System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/lib/ruby/gems/2.3.0', execute `gem env` for more information from /Library/Ruby/Site/2.3.0/rubygems/specification.rb:1469:in `block in activate_dependencies' from /Library/Ruby/Site/2.3.0/rubygems/specification.rb:1458:in `each' from /Library/Ruby/Site/2.3.0/rubygems/specification.rb:1458:in `activate_dependencies' from /Library/Ruby/Site/2.3.0/rubygems/specification.rb:1440:in `activate' from /Library/Ruby/Site/2.3.0/rubygems/specification.rb:1472:in `block in activate_dependencies' from /Library/Ruby/Site/2.3.0/rubygems/specification.rb:1458:in `each' from /Library/Ruby/Site/2.3.0/rubygems/specification.rb:1458:in `activate_dependencies' from /Library/Ruby/Site/2.3.0/rubygems/specification.rb:1440:in `activate' from /Library/Ruby/Site/2.3.0/rubygems/specification.rb:1472:in `block in activate_dependencies' from /Library/Ruby/Site/2.3.0/rubygems/specification.rb:1458:in `each' from /Library/Ruby/Site/2.3.0/rubygems/specification.rb:1458:in `activate_dependencies' from /Library/Ruby/Site/2.3.0/rubygems/specification.rb:1440:in `activate' from /Library/Ruby/Site/2.3.0/rubygems/specification.rb:1472:in `block in activate_dependencies' from /Library/Ruby/Site/2.3.0/rubygems/specification.rb:1458:in `each' from /Library/Ruby/Site/2.3.0/rubygems/specification.rb:1458:in `activate_dependencies' from /Library/Ruby/Site/2.3.0/rubygems/specification.rb:1440:in `activate' from /Library/Ruby/Site/2.3.0/rubygems.rb:224:in `rescue in try_activate' from /Library/Ruby/Site/2.3.0/rubygems.rb:217:in `try_activate' from /Library/Ruby/Site/2.3.0/rubygems/core_ext/kernel_require.rb:128:in `rescue in require' from /Library/Ruby/Site/2.3.0/rubygems/core_ext/kernel_require.rb:40:in `require' from /Library/Ruby/Gems/2.3.0/gems/railties-5.1.5/exe/rails:9:in `<top (required)>' from /usr/local/bin/rails:22:in `load' from /usr/local/bin/rails:22:in `<main>'

となったので,言われたとおり以下をしてみました.

$ gem env RubyGems Environment: - RUBYGEMS VERSION: 2.7.6 - RUBY VERSION: 2.5.0 (2017-12-25 patchlevel 0) [x86_64-darwin17] - INSTALLATION DIRECTORY: /usr/local/lib/ruby/gems/2.5.0 - USER INSTALLATION DIRECTORY: /Users/muraseyuri/.gem/ruby/2.5.0 - RUBY EXECUTABLE: /usr/local/opt/ruby/bin/ruby - EXECUTABLE DIRECTORY: /usr/local/bin - SPEC CACHE DIRECTORY: /Users/muraseyuri/.gem/specs - SYSTEM CONFIGURATION DIRECTORY: /usr/local/Cellar/ruby/2.5.0_2/etc - RUBYGEMS PLATFORMS: - ruby - x86_64-darwin-17 - GEM PATHS: - /usr/local/lib/ruby/gems/2.5.0 - /Users/muraseyuri/.gem/ruby/2.5.0 - /usr/local/Cellar/ruby/2.5.0_2/lib/ruby/gems/2.5.0 - GEM CONFIGURATION: - :update_sources => true - :verbose => true - :backtrace => false - :bulk_threshold => 1000 - REMOTE SOURCES: - https://rubygems.org/ - SHELL PATH: - /Users/muraseyuri/.rbenv/bin - /usr/local/bin - /usr/bin - /bin - /usr/sbin - /sbin - /usr/local/share/dotnet - /Library/Frameworks/Mono.framework/Versions/Current/Commands

あとはnokogiriのバージョンが違うのでしょうか?
その後どうしたら良いですか

色々動かしている内に最初のrailsのバージョンすらもできなくなってしまいました.

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

「Rails のバージョンの確認」ですが,インストールされている rails gem のバージョンを確認したいのであれば,

$ gem list rails

とします。(名称に rails が含まれるすべての gem が表示されますが)

一方,特定の Rails アプリの Rails バージョンを確認したいのであれば,そこの Gemfile の

rb

1gem 'rails', '~> 5.1.5'

といった記述を見ます。

コマンドラインで rails -v とやったときの動作は,何らかの Rails アプリのディレクトリーで実行した場合と,そうでない場合とで違っています。

Rails アプリのディレクトリーでないときは,インストールされている最新の Rails のバージョンが表示されます。というのは,rails というコマンドは,とくにバージョンを指定しなければ最新のやつが動くからです。

一方,特定の Rails アプリのディレクトリーで実行した場合は,その Rails アプリの rails コマンドが起動してバージョンを表示してくれます。
このとき,Gemfile が読み込まれ,一通りのライブラリーの読み込みなども行われます。そのぶん時間もかかります。
そして,もし Gemfile に記載されたライブラリーがインストールされていなかったりすると,エラーを出して落ちます。当然,Rails のバージョンは表示されません。
これがまさにご質問の冒頭に書かれた状況です。
エラーメッセージには

Could not find 'nokogiri' (>= 1.5.9)

とありますね。バージョン 1.5.9 以上の nokogiri がインストールされていないのです。

ところが,gem list すると,ちゃんと 1.5.9 が存在している,と。

こういうときは,違う Ruby バージョンで操作している可能性があります。

実際,ruby -v とか gem env したときの Ruby はバージョン 2.5.0 なのに,rails -v でエラーが出たとき,スタックトレースに出てくるファイルのパスに 2.3.0 というディレクトリーが書かれていて,なんか Ruby 2.3.0 で動いてるぽいんですよね。

Ruby は rbenv でインストールしたようなので,以下の結果を教えてください。

$ rbenv versions

そして,もしリストに 2.3.0 があるようなら,空のディレクトリーで

$ rbenv shell 2.3.0 $ gem list nokogiri

とやって,Ruby 2.3.0 にインストールされた Nokogiri のバージョンを確認してください。
rbenv shell 云々 は一時的に Ruby のバージョンを切り替えます。ターミナルを閉じれば影響は消えます)

リストに 2.3.0 がなければ

$ rbenv shell system $ ruby -v $ gem list nokogiri

をやってみてください。
rbenv shell system は,rbenv で入れたのでない,もともとシステムに入っていた Ruby バージョンに一時的に切り替えます)

ここまでの情報が得られると少し解決に近づくかと思います。

投稿2018/03/11 12:01

scivola

総合スコア2108

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

お疲れさまです。
私も勉強中なのですが、このような状況に近いもの見つけました。

リンク内容

参考にしてみてはどうでしょうか?

投稿2018/03/10 10:33

banianizm

総合スコア92

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2018/03/10 23:29

ありがとうございます.私の場合,nokogiri-1.5.9がなく代わりにnokogiri-1.5.6があるようです.そこで教えて頂いたリンクを参考に$ gem listをすると,nokogiri (1.8.2, 1.5.9)と表示されました.nokogiri-1.5.9はあるのにないということになっているのでしょうか?以下コードです. $ gem list *** LOCAL GEMS *** actioncable (5.0.6) actionmailer (5.0.6) actionpack (5.0.6) actionview (5.0.6) activejob (5.0.6) activemodel (5.0.6) activerecord (5.0.6) activesupport (5.0.6) arel (7.1.4) bigdecimal (default: 1.3.4) bindex (0.5.0) builder (3.2.3) bundler (default: 1.16.1) byebug (10.0.0) cmath (default: 1.0.0) coffee-rails (4.2.2) coffee-script (2.4.1) coffee-script-source (1.12.2) concurrent-ruby (1.0.5) crass (1.0.3) csv (default: 1.0.0) date (default: 1.0.0) dbm (default: 1.0.0) did_you_mean (1.2.0) erubis (2.7.0) etc (default: 1.0.0) execjs (2.7.0) fcntl (default: 1.0.0) ffi (1.9.23) fiddle (default: 1.0.0) fileutils (default: 1.0.2) globalid (0.4.1) i18n (0.9.5) io-console (default: 0.4.6) ipaddr (default: 1.2.0) jbuilder (2.7.0) jquery-rails (4.3.1) json (default: 2.1.0) listen (3.0.8) loofah (2.2.0) mail (2.7.0) method_source (0.9.0) mini_mime (1.0.0) mini_portile2 (2.3.0) minitest (5.11.3, 5.10.3) multi_json (1.13.1) net-telnet (0.1.1) nio4r (2.2.0) nokogiri (1.8.2, 1.5.9) openssl (default: 2.1.0) power_assert (1.1.1) psych (default: 3.0.2) puma (3.11.3) rack (2.0.4) rack-test (0.6.3) rails (5.0.6) rails-dom-testing (2.0.3) rails-html-sanitizer (1.0.3) railties (5.0.6) rake (12.3.0) rb-fsevent (0.10.3) rb-inotify (0.9.10) rdoc (default: 6.0.1) sass (3.5.5) sass-listen (4.0.0) sass-rails (5.0.7) scanf (default: 1.0.0) sdbm (default: 1.0.0) spring (2.0.2) spring-watcher-listen (2.0.1) sprockets (3.7.1) sprockets-rails (3.2.1) sqlite3 (1.3.13) stringio (default: 0.0.1) strscan (default: 1.0.0) test-unit (3.2.7) thor (0.20.0) thread_safe (0.3.6) tilt (2.0.8) turbolinks (5.1.0) turbolinks-source (5.1.0) tzinfo (1.2.5) uglifier (4.1.6) web-console (3.5.1) webrick (default: 1.4.2) websocket-driver (0.6.5) websocket-extensions (0.1.3) xmlrpc (0.3.0) zlib (default: 1.0.0)
banianizm

2018/03/11 05:00

うーん、サーバー再起動とかはしてみましたか? 一度やってみていただいていいでしょうか?
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問