повернення для встановлення пакета "Не вдалося знайти Gemfile"


102

Я новачок у Rails і зараз працюю через путівник. У посібнику зазначено:

Використовуйте текстовий редактор, щоб оновити потрібний Bundler Gemfile вмістом Лістингу 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

Потім встановлюємо і включаємо дорогоцінні камені за допомогою bundle install команди:

    $ bundle install --without production 

Якщо Bundler поскаржиться на no such file to load -- readline (LoadError)спробу додати gem ’rb-readline’до вашого Gemfile.)

Я дотримувався кроків, навіть додаючи gem 'rb-readline'до Gemfile, але, мабуть, файл неможливо знайти, і коли я переходжу до свого текстового редактора, я бачу Gemfileсебе. Я помітив, що вони змусили мене поставити, gem 'rails', 3.2.3і моя версія Rails - 3.2.1, тому я спробував змінити його на 3.2.1, але це теж не вийшло.

Будь-які думки чи поради були б дуже вдячні.


1
чому ви ставите - - символи в список Gemfile?
MikDiet

ні, ні, я просто ставлю це там, щоб це було читабельніше для вас, хлопці, оскільки я ще не можу використовувати зображення .. Я використовую піднесений текстовий редактор лише для вашої інформації.
levelone

2
Я знайшов рішення проблеми .. Я вважаю, що "$ cd demo_app", а потім "$ install bundle" з цього місця папки. :)
levelone

Відповіді:


244

Вам просто потрібно змінити каталоги у вашому додатку, ТОГО запустити bundle install:)


1
@svoisen,: D Google включає вашу відповідь у фрагмент під час пошуку цієї конкретної проблеми, btw. Привіт і подяка від позбавленого сну майбутнього!
Хайме

1
До речі, ви можете знайти каталог своїх додатків за допомогою whereis <app_name>команди, але Gemfile знаходиться під / usr / shared / *
4gus71n

Додаток також може бути в папці в / opt /
Mo Beigi

Просто додайте пробіл, який рухається до папки проекту, а не папка для проекту :)

20

Ви також можете вказати шлях до gemfile у цій же команді, наприклад

BUNDLE_GEMFILE="MyProject/Gemfile.ios" bundle install

2
Ідеальна відповідь. Тому що в моїй ситуації я не можу отримати команду пакету доступу скрізь. [root@alc bin]# BUNDLE_GEMFILE="../../apps/redmine/htdocs/Gemfile" ./bundle installце моя команда виконувати.
uzay95

З якоїсь причини у мене виникло це питання, коли я копіював Gemfile у докерний контейнер, я не міг знайти .bundle, і я встановив свій WOKRDIR, але він, схоже, не зачепив його за встановлення пакета, це зробило трюк!
КонстантинК

17

У мене ця проблема була і на машині OSX. Я виявив, що рейки не встановлені ... що мене здивувало, оскільки я думав, що OSX завжди поставляється з Rails. Для установки рейок

  • sudo gem install rails
  • для встановлення jekyll мені також знадобилося sudo
  • sudo gem install jekyll bundler
  • cd ~/Sites
  • jekyll new <foldername>
  • cd <foldername> АБО cd !$ (це магія;)
  • bundle install
  • bundle exec jekyll serve
  • Потім у своєму браузері просто перейдіть до http://127.0.0.1:2000/ і це дійсно має працювати

Уникайте використання sudoдля встановлення дорогоцінних каменів. Це заподіє вам біль. Детальніше: thinkbot.com/blog/psa-do-not-use-system-ruby
Девід Хемпі


7

Коли у мене були подібні проблеми, gem update --systemмені допомогли. Виконати це ранішеbundle install


2

У мене була ця проблема на Ubuntu 18.04. Я оновив дорогоцінний камінь

  • sudo gem встановити рейки
  • sudo gem встановити jekyll
  • sudo gem встановити jekyll bundler
  • cd ~ / бажаний папка
  • jekyll new
  • CD АБО
  • пучок ініт
  • встановити пакет
  • пачка додайте Джекілл
  • bundle exec jekyll подають

Всі працювали і перейдіть на ваш браузер, просто перейдіть на http://127.0.0.1:2000/, і він справді повинен працювати


0

1 переконайтеся, що файл Gemfileзамість gemfile.

2 переконайтеся, що ви знаходитесь в тому самому каталозі, що і Gemfile.


-1

Шукайте файл Gemfile у своєму проекті, перейдіть до цього каталогу та запустіть "встановити пакет". перед запуском цієї команди переконайтеся, що ви встановили дорогоцінний камінь "sudo gem install bundler"


він зробив "пакет встановлення", я не розумію вашої відповіді
Гар

-10

Подумайте більше про те, що ви встановлюєте, і перейдіть у папку Gemfile, а потім спробуйте використовувати sudo bundle install


2
ніколи не слід запускати пачку з sudo
tasomaniac
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.