Recibo el siguiente error al intentar ejecutar 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.
Puede ser importante tener en cuenta que esta implementación estaba funcionando, entonces actualicé a Ruby 2.1.0 para eliminar un error de codificación. Actualicé localmente que funcionó bien. Ejecuté rvm install 2.1.0y rvm use 2.1.0luego cambié mi .ruby-versionarchivo para reflejar esta actualización de Ruby.
El bundle installcomando funciona localmente, pero produce el mismo error anterior cuando me dirijo al servidor de destino y ejecuto este comando.
Si corro gem list, puedo ver esto en la lista de gemas.
...
jquery-rails (3.0.4)
json (1.8.1)
less (2.3.2)
...
Si pruebo la solución recomendada gem install json -v '1.8.1'localmente y en el servidor de destino, obtengo el siguiente resultado:
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
Entonces parece que la gema está instalada, ¿verdad? ¿Por qué está pasando esto? ¿Como puedo resolver esto? Cualquier ayuda será muy apreciada.
fuente

bundle show jsonte da?gem json, '1.8.1'a Gemfilesudo apt-get install ruby-deven mi Ubuntu.Respuestas:
$ bundle update json $ bundle installfuente
Entonces, después de medio día en esto y casi inmediatamente después de publicar mi pregunta, encontré la respuesta. Bundler 1.5.0 tiene un error en el que no reconoce las gemas predeterminadas como se hace referencia aquí
La solución fue actualizar al paquete 1.5.1 usando
gem install bundler -v '= 1.5.1'fuente
gem install json -v '1.8.1'actualización después de la actualización solucionó el mensaje de error para mí.gem install json -v '1.8.1'seguido debundle packagehizo el truco para míEjecute este comando, entonces todo estará bien
sudo apt-get install libgmp-devfuente
si está en MacOS Sierra y su versión de ruby es 2.4.0. La versión de ruby no es compatible con json 1.8.3.
Puede intentar agregar esta línea en su Gemfile:
gem 'json', github: 'flori/json', branch: 'v1.8'¡Esto funciona para mí!
fuente
Para resolver este problema, simplemente ejecute:
bundle updateActualizará la versión de su paquete. Entonces corre:
bundle installTu problema se resolverá. La solución está bien explicada aquí .
fuente
bundle update, la instalación funcionó muy bien. Gracias por la solución limpia.bundle updateactualizará todas tus gemas.gem update bundleractualizará el paquete.Encontré la solución aquí . Hay un problema con la versión 1.8.1 de json y con ruby 2.2.3, así que instale la versión 1.8.3 de json.
gem install json -v1.8.3fuente
Gemfile.locky luego simplemente ejecutobundle instally eso es todo.Deberías intentarlo
$ sudo gem install json -v '1.8.2'en mi caso (Ubuntu 14.04) eso no funcionó directamente y tuve que hacer esto:
$ sudo apt-get install ruby-devy luego podría instalar la gema y continuar. Tuve un problema más que fue solucionado por:
$ sudo apt-get install libsqlite3-devLa esperanza ayuda.
fuente
Si la respuesta recomendada no ayudó porque ya está utilizando una versión más reciente de bundler. Prueba la solución que funcionó para mí.
Elimine todo dentro de la carpeta de su proveedor. Agrega una línea a tu archivo de gemas
gem 'json', '1.8.0'Entonces corre -
bundle update json.Parece ser un problema con 1.8.1, así que volver a 1.8.0 funcionó para mí.
fuente
gem 'json', '1.8.6'funcionó para mí. Es posible que desee probar eso.Me encontré con este error mientras intentaba que un proyecto se ejecutara en mi caja de desarrollo local (OSX 10.6), usando Sinatra y Postgresql (a través de activerecord), ejecutándose en un rvm'd ruby 2.1. Encontré mi respuesta aquí: https://github.com/wayneeseguin/rvm/issues/2511
Mi problema exacto (después del primer bloque de entradas de registro):
La respuesta :
La explicacion :
En aras de la integridad, primero me había olvidado de actualizar rvm (
rvm get head), lo que produjo algunos otros errores, pero aún necesitaba la--disable-binarybandera una vez que lo había hecho.fuente
rvm listy verás cuál es tu versión actual. Utilice la cadena completa (por ejemplo, ruby-2.0.0-p451) en lugar de la2.1.0mencionada anteriormente.bundle update json. Ayudó a pasar.fuente
Cuando intenté instalar la gema json usando
gem install jsonseparado de solo usarbundle installI gotERROR: Failed to build gem native extension., buscando eso encontré usandoapt-get install ruby-devHizo el truco
fuente
Para OS X, asegúrese de tener coreutils
fuente
Esto parece ser un error en Bundler que no reconoce las gemas predeterminadas instaladas junto con ruby 2.x. Seguí experimentando el problema incluso con la última versión del paquete (1.5.3).
Una solución es simplemente eliminar json-1.8.1.gemspec del directorio predeterminado de gemspec.
rm ~/.rubies/ruby-2.1.0/lib/ruby/gems/2.1.0/specifications/default/json-1.8.1.gemspecDespués de hacer esto, el agrupador no debería tener problemas para localizar la gema. Tenga en cuenta que estoy usando chruby. Si está utilizando otro administrador de ruby, deberá actualizar su ruta en consecuencia.
fuente
Me faltaba la solución de encabezados C para descargarlo para Xcode, esta es la mejor manera.
xcode-select --installEspero eso ayude.
fuente
El paquete no podía instalar json -v '1.8.1' y eliminar mi Gemfile.lock y ejecutar el paquete nuevamente resolvió este problema para mí.
fuente
Instalé la última versión de json:
gem install jsonLuego eliminó la línea json (1.8.1) del Gemfile.lock e hizo un
bundle installY luego el archivo Gemfile.lock usa json (1.8.3) sin errores
fuente
Cambiar la versión de ruby de 1.9 a 2.2 con rvm hizo el trabajo por mí
fuente
Para mí, algunas de las respuestas mencionadas anteriormente fueron útiles desde el punto de vista de la comprensión, pero no resolvieron mi problema.
Entonces esto es lo que hice para resolver el problema.
Bundler -vcomando). Tenía instalada la versión 1.12.5gem install bundler -v '1.11.2')fuente
Para macOS Sierra:
Me encontré con este error cuando usé bundler (
v1.15.3) en elv4.2proyecto Rails ( ). La solución para mí esgem uninstall bundler -v '1.15.3'ygem install bundler -v '1.14.6'.fuente