[ruby-on-rails] 번 들러가 JSON gem을 설치하지 않는 이유는 무엇입니까?
실행하려고 할 때 다음 오류가 발생합니다 cap production deploy
.
DEBUG [dc362284] Bundler::GemNotFound: Could not find json-1.8.1.gem for installation
DEBUG [dc362284] An error occurred while installing json (1.8.1), and Bundler cannot continue.
DEBUG [dc362284] Make sure that `gem install json -v '1.8.1'` succeeds before bundling.
인코딩 오류를 제거하기 위해 Ruby 2.1.0으로 업그레이드 한 것보다이 배포가 작동했다는 점에 유의하는 것이 중요 할 수 있습니다. 나는 잘 작동하는 로컬로 업그레이드했습니다. 이 Ruby 업그레이드를 반영하기 위해 파일을 실행 rvm install 2.1.0
하고 rvm use 2.1.0
변경했습니다 .ruby-version
.
이 bundle install
명령은 로컬에서 작동하지만 대상 서버에 ssh하고이 명령을 실행할 때 위와 동일한 오류가 발생합니다.
실행하면 gem list
보석 목록에서 볼 수 있습니다.
...
jquery-rails (3.0.4)
json (1.8.1)
less (2.3.2)
...
권장 솔루션을 gem install json -v '1.8.1'
로컬 및 대상 서버에서 시도 하면 다음 출력이 표시됩니다.
Building native extensions. This could take a while...
Successfully installed json-1.8.1
Parsing documentation for json-1.8.1
Done installing documentation for json after 0 seconds
1 gem installed
그래서 gem이 설치된 것 같죠? 왜 이런 일이 발생합니까? 어떻게 해결할 수 있습니까? 어떤 도움이라도 대단히 감사하겠습니다.
답변
$ bundle update json
$ bundle install
답변
답변
이 명령을 실행하면 모든 것이 정상입니다
sudo apt-get install libgmp-dev
답변
MacOS Sierra에 있고 루비 버전이 2.4.0 인 경우 루비 버전은 json 1.8.3과 호환되지 않습니다.
Gemfile에 다음 줄을 추가 할 수 있습니다.
gem 'json', github: 'flori/json', branch: 'v1.8'
이것은 나를 위해 작동합니다!
답변
답변
여기서 해결책을 찾았습니다 . json 버전 1.8.1 및 ruby 2.2.3에 문제가 있으므로 json 1.8.3 버전을 설치하십시오.
gem install json -v1.8.3
답변
당신은 시도해야
$ sudo gem install json -v '1.8.2'
제 경우에는 (Ubuntu 14.04) 직접 작동하지 않았고이 작업을 수행해야했습니다.
$ sudo apt-get install ruby-dev
그런 다음 gem을 설치하고 계속할 수 있습니다. 해결 된 문제가 하나 더 있습니다.
$ sudo apt-get install libsqlite3-dev
희망이 도움이됩니다.