web-dev-qa-db-ja.com

YAMLセーフローディングは利用できません

gem install compasscompassをインストールしようとすると、次のエラーが発生しました。

YAML safe loading is not available. 
Please upgrade psych to a version that supports safe loading (>= 2.0).

このエラーの原因と問題の解決方法

19

サイコジェムを更新する必要があるようです。 gem install psychを実行してから、gem update psychを実行してみてください。

こちらのpsych readmeファイルを参照してください: https://github.com/Ruby/psych/blob/master/README.md

編集:Rubyのバージョンも更新する必要があります。これはRubyのインストール方法に依存しますが、@ ewerxの回答には1つの提案があります。

12
Scott Newson

これを解決するために、私は最初にRuby 2.0.xから2.4.2にアップグレードしました( https://gorails.com/setup/osx/10.12-sierra ):

rbenv install 2.4.2;rbenv global 2.4.2

次に、更新されたgem:

Sudo gem update --system;gem update

Gemを更新するだけで十分な場合があります。

5
ewerx

https://gorails.com/setup/osx/10.12-sierra に関する投稿の次の部分は、私の問題を解決しました。

Ruby on Rails= macOS 10.12 Sierraの開発環境を設定します。

OS Xの古いバージョンはほとんど互換性がありますので、できる限り従い、Googleで問題が発生した場合は検索してください。解決策を文書化した人はたくさんいます。

Homebrewのインストールまず、Homebrewをインストールする必要があります。 Homebrewを使用すると、ソースからソフトウェアパッケージを簡単にインストールしてコンパイルできます。

Homebrewには非常にシンプルなインストールスクリプトが付属しています。 XCode CommandLine Toolsのインストールを求められたら、yesと答えます。

ターミナルを開き、次のコマンドを実行します。

Ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install ) "インストールRuby Rubyインストールするバージョンを選択:

Homebrewがインストールされたので、それを使用してRubyをインストールできます。

Rbenvを使用して、Rubyバージョンをインストールおよび管理します。

これを行うには、ターミナルで次のコマンドを実行します。

brew install rbenv Ruby-build

Rbenvをbashに追加して、ターミナルを開くたびにロードするようにします

echo 'if which rbenv>/dev/null; eval "$(rbenv init-)"; fi '>>〜/ .bash_profile source〜/ .bash_profile

Rubyをインストールする

rbenv install 2.5.1

rbenv global 2.5.1

Ruby -v

0
DolbyTo