1
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.

bundle updateで表示されたエラーの解決

Posted at

初投稿です。

今回、参考にさせていただいた記事はこちらです。
https://qiita.com/hatorijobs/items/2928e152f22d009b07d0

今回発生したエラー

それでは早速本題ですが、伊藤淳一さんの
「everyday rails - rspecによるrailsテスト入門」
という書籍やブログを参考させていただきながら、サンプルのセットアップをしていたところ、以下のようなエラーが出ました。

ターミナル
アプリのディレクトリ % bundle update

Fetching gem metadata from https://rubygems.org/.............
Fetching gem metadata from https://rubygems.org/.
Resolving dependencies...
Bundler could not find compatible versions for gem "railties":
  In Gemfile:
    rails (= 6.0.0) was resolved to 6.0.0, which depends on
      railties (= 6.0.0)

    sass-rails (~> 4.0.3) was resolved to 4.0.5, which depends on
      railties (>= 4.0.0, < 5.0)

どうやら、
「互換性のあるrailtiesが見つからない」
といった内容のエラーのようです。

では、railtiesを変更すればいいかというと、そう単純な話ではないとのこと。

解決策

まずは、

ターミナル
アプリのディレクトリ % gem list

と入力してGemの一覧を確認してみました。

すると、「sass-rails」というGemのバージョンが、
アプリのGemfileに記述してあるものと「gem list」に記述されているものとで異なっていることがわかりました。

具体的には

Gemfile
gem 'sass-rails', '~> 4.0.3'

ターミナル
sass-rails (6.0.0, 5.1.0)

となっていました。

このバージョンが同じでないと、冒頭のエラーが出てくるようです。

したがって、Gemfileを次のように変更したあと、bundle updateしました。

Gemfile
gem 'sass-rails', '~> 6.0.0'

この後、

ターミナル
アプリのディレクトリ % bundle update

ですね。

すると、今度は次のようなエラーが出ました。

ターミナル
アプリのディレクトリ % bundle update
Fetching gem metadata from https://rubygems.org/.............
Fetching gem metadata from https://rubygems.org/.
Resolving dependencies....
Bundler could not find compatible versions for gem "railties":
  In Gemfile:
    coffee-rails (~> 4.0.0) was resolved to 4.0.0, which depends on
      railties (>= 4.0.0.beta, < 5.0)

    rails (= 6.0.0) was resolved to 6.0.0, which depends on
      railties (= 6.0.0)

といっても、先ほどの「sass-rails」とほぼ同じような内容です。

今度は「coffee-rails」というGemのバージョンが、
アプリのGemfileに記述してあるものと「gem list」に記述されているものとで異なっているとのことです。

具体的には、

Gemfile
gem 'coffee-rails', '~> 4.0.0'

ターミナル
coffee-rails (5.0.0, 4.2.2)

だったわけですね。

そこで、先ほどと同じように

Gemfile
gem 'coffee-rails', '~> 5.0.0'

と変更した後、

ターミナル
アプリのディレクトリ % bundle update

bundle updateを実行しました。

すると、無事実行することができました!

1
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
1
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?