la instalación del paquete devuelve "No se pudo localizar Gemfile"

102

Soy nuevo en Rails y actualmente estoy trabajando en una guía. La guía dice:

Utilice un editor de texto para actualizar el Gemfile que necesita Bundler con el contenido del Listado 2.1.

source 'https://rubygems.org'

gem 'rails', '3.2.3'

group :development do
  gem 'sqlite3', '1.3.5'
end


# Gems used only for assets and not required
# in production environments by default.

group :assets do
  gem 'sass-rails',   '3.2.4'
  gem 'coffee-rails', '3.2.2'
  gem 'uglifier', '1.2.3'
end

gem 'jquery-rails', '2.0.0'

group :production do
  gem 'pg', '0.12.2'
end

Luego instalamos e incluimos las gemas usando el bundle install comando:

    $ bundle install --without production 

Si Bundler se queja, no such file to load -- readline (LoadError)intente agregarlo gem ’rb-readline’a su Gemfile).

Seguí los pasos incluso agregando gem 'rb-readline'al Gemfile, pero aparentemente el archivo no se puede encontrar y cuando voy a mi editor de texto, veo el archivo Gemfile. Noté que me hicieron poner gem 'rails', 3.2.3y mi versión de Rails es 3.2.1 así que intenté cambiarla a 3.2.1 pero tampoco funcionó.

Cualquier pensamiento o consejo será muy apreciado.

nivel uno
fuente
1
¿Por qué pones - - caracteres en la lista de Gemfile?
MikDiet
no, simplemente lo puse ahí para que sea más legible para ustedes, ya que todavía no puedo usar imágenes ... uso un editor de texto sublime solo para su información.
levelone
2
Encontré la solución al problema. Supongo que "$ cd demo_app" y luego "$ install bundle" desde esa ubicación de carpeta. :)
levelone

Respuestas:

244

Solo necesita cambiar los directorios a su aplicación, LUEGO ejecutar bundle install:)

svoisen
fuente
1
@svoisen,: D Google incluye su respuesta en el fragmento al buscar este problema en particular, por cierto. ¡Saludos y gracias desde el futuro privado de sueño!
Jaime
1
Por cierto, puede encontrar el directorio de su aplicación usando el whereis <app_name>comando, generalmente el Gemfile está en / usr / shared / *
4gus71n
La aplicación también podría estar en una carpeta en / opt /
Mo Beigi
Simplemente agregue un poco de espacio libre que se mueva a la carpeta del proyecto, no a la carpeta 'bin' del proyecto :)
20

También puede indicar la ruta al archivo de gemas en el mismo comando, por ejemplo

BUNDLE_GEMFILE="MyProject/Gemfile.ios" bundle install
houbena
fuente
2
Respuesta perfecta. Porque en mi situación no puedo obtener el comando de paquete de acceso en todas partes. [root@alc bin]# BUNDLE_GEMFILE="../../apps/redmine/htdocs/Gemfile" ./bundle installes mi comando para ejecutar.
uzay95
Por alguna razón, estaba teniendo este problema cuando estaba copiando un Gemfile en un contenedor de la ventana acoplable, no pude encontrar un .bundle y había configurado mi WOKRDIR pero no parecía detectarlo para la instalación del paquete, ¡esto funcionó!
ConstantineK
17

También tuve este problema en una máquina OSX. Descubrí que los rieles no estaban instalados ... lo que me sorprendió porque pensé que OSX siempre venía con Rails. Para instalar rieles

  • sudo gem install rails
  • para instalar jekyll también necesitaba sudo
  • sudo gem install jekyll bundler
  • cd ~/Sites
  • jekyll new <foldername>
  • cd <foldername> O cd !$ (eso es magia;)
  • bundle install
  • bundle exec jekyll serve
  • Luego, en su navegador, vaya a http://127.0.0.1:4000/ y realmente debería estar ejecutándose
MAILO
fuente
Evite usar sudopara instalar gemas. Esto le causará dolor. Leer más: thoughtbot.com/blog/psa-do-not-use-system-ruby
David Hempy
13

Debes estar en el mismo directorio de Gemfile

forzagreen
fuente
7

Cuando tuve un problema similar gem update --systemme ayudó. Ejecuta esto antesbundle install

Dzianis Yafimau
fuente
2

Tuve este problema en Ubuntu 18.04. Actualicé la gema

  • sudo gem instalar rieles
  • sudo gem instalar jekyll
  • sudo gem install jekyll bundler
  • cd ~ / carpeta deseada
  • jekyll nuevo
  • cd O
  • paquete init
  • instalación del paquete
  • paquete agregar jekyll
  • paquete exec jekyll serve

Todo funcionó y vaya a su navegador, solo vaya a http://127.0.0.1:4000/ y realmente debería estar funcionando

osmjit
fuente
0

1 asegúrese de que el archivo sea en Gemfilelugar de gemfile.

2 asegúrese de estar en el mismo directorio que el Gemfile.

Adam Allalou
fuente
-1

Busque el archivo Gemfile en su proyecto, vaya a ese directorio y luego ejecute "bundle install". antes de ejecutar este comando, asegúrese de haber instalado la gema "sudo gem install bundler"

Anant Agarwal
fuente
hizo una "instalación de paquete", no entiendo tu respuesta
Gar
-10

Piense más en lo que está instalando y navegue por la carpeta Gemfile, luego intente usar sudo bundle install

Galleta
fuente
2
nunca deberías ejecutar bundle con sudo
tasomaniac