2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

gemのあらゆるコマンドがAugumentErrorで実行できなかった件

Last updated at Posted at 2019-03-24

#この時のPC環境 ※要確認
OS:Windows10
Ruby:2.5.3p105 (2018-10-18 revision 65156) [x64-mingw32]
RubyGems:2.3.0

Ruby on Railsのバージョンを確かめようとコマンド"rails -v"を実行したところ、以下のようなエラー表示が出ました。

C:\Ruby25-x64\rubygems-3.0.3>rails -v
Traceback (most recent call last):
        2: from C:/Ruby25-x64/bin/rails:23:in `<main>'
        1: from C:/Ruby25-x64/lib/ruby/site_ruby/2.5.0/rubygems.rb:302:in `activate_bin_path'
C:/Ruby25-x64/lib/ruby/site_ruby/2.5.0/rubygems.rb:283:in `find_spec_for_exe': can't find gem railties (>= 0.a) with executable rails (Gem::GemNotFoundException)

#エラー表示"ArgumentError"

Ruby on Railsをインストールしてみようと、コマンド"gem install rails"を実行したところ、以下のようなエラーが返ってきました。

ERROR:  While executing gem ... (ArgumentError)
    wrong number of arguments (given 1, expected 0)

ArgumentError・・・?引数がおかしい?

とりあえず、上のエラー表示についてググってみると、以下の記事を見つけました。
https://teratail.com/questions/156929
自分と同じようなエラーかなーと思いましたが、結局解決できていない模様。

さらにググってみると、以下の記事を発見。
https://github.com/rubygems/rubygems/issues/2224

この記事から、RubyとRubyGemsのバージョンによっては上手くいかないことがあると考え、RubyGemsをアップデートしてみることに。

#コマンドプロンプトからRubyGemsをアップデートできない
gem update --systemを実行すると、以下のような表示が出ました。

C:\>gem update --system
Updating rubygems-update
ERROR:  While executing gem ... (ArgumentError)
    wrong number of arguments (given 1, expected 0)

またArgumentError・・・

どうにか別の方法でRubyGemsをアップデートできないものかとググりまくっていると、次の記事を発見。
http://d.hatena.ne.jp/c_mutoh/20100329/1269877259

この記事にはZipファイルを使ってRubyGemsをアップデートする方法が書かれていました。

#Zipファイルを使ってRubyGemsをアップデートする方法
※先の記事に書かれている手順通りに実行しましたが、念のため書いておきます。

この時、私がインストールしたRubyGemsのバージョンは3.0.3です。(この記事を書いている時点において最新)

まず、RubyGemsのサイトのダウンロードページからZIPを選択して、Zipファイルをダウンロードします。

C:\Ruby25-x64のディレクトリ(Rubyがインストールされているディレクトリ)にダウンロードしたZipファイルを解凍します。

解凍できたら、cdコマンドで解凍したディレクトリに移動します。(私の場合"cd C:\Ruby25-x64\rubygems-3.0.3"コマンドを実行)

ここで、setup.rbを以下のように実行します。

C:\Ruby25-x64\rubygems-3.0.3>ruby setup.rb

これでRubyGemsのバージョン3.0.3がインストールできたはず・・・

バージョンを確認すると、

C:\Ruby25-x64\rubygems-3.0.3>gem -v
3.0.3

バージョンが2.3.0から3.0.3に更新されました!

#Ruby on Railsをインストール
RubyGemsのバージョンアップが完了したところで、Ruby on Railsをインストールしてみます。
以下のコマンドを実行します。

C:\Ruby25-x64\rubygems-3.0.3>gem install rails
Fetching rails-5.2.2.1.gem
Successfully installed railties-5.2.2.1
Successfully installed rails-5.2.2.1
Parsing documentation for railties-5.2.2.1
Installing ri documentation for railties-5.2.2.1
Parsing documentation for rails-5.2.2.1
Installing ri documentation for rails-5.2.2.1
Done installing documentation for railties, rails after 0 seconds
2 gems installed

今度はエラーが返ってきませんでした。

Ruby on Railsが無事インストールされたか確認してみます。

C:\Ruby25-x64\rubygems-3.0.3>rails -v
Rails 5.2.2.1

インストールできたみたいです!

#まとめ
Ruby on Railsをインストールしたいが、できない

RubyGemsのバージョンを変更する必要がある(?)

コマンドプロンプトでRubyGemsのバージョンを更新できない

Zipファイルを使ってRubyGemsのバージョンを更新

Ruby on Railsインストール成功

という話の流れでした。

#個人的な感想
Qiita初投稿の記事になります。

私はRuby初心者ですが、プログラミングする以前に環境構築の時点でつまづくのは結構辛いですよね・・・
私はこの問題で半日以上費やしてしまい、同じような思いを他の方が味わうのは何とも酷だなと思い、思い切って投稿しました。

参考になれば幸いです。

あぁ・・・おとなしくMac買って使った方が良いんだろうな・・・

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?