bundle install返回"找不到Gemfile"

lev*_*one 92 install bundle ruby-on-rails gemfile

我是Rails的新手,目前正在通过指南.该指南指出:

使用文本编辑器使用清单2.1的内容更新Bundler所需的Gemfile.

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
Run Code Online (Sandbox Code Playgroud)

然后,我们使用以下bundle install 命令安装并包含gem :

    $ bundle install --without production 
Run Code Online (Sandbox Code Playgroud)

如果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,但这也不起作用.

任何想法或建议将不胜感激.

svo*_*sen 229

你只需要将目录更改为你的应用程序,然后运行bundle install:)

  • @svoisen, :D Google 在搜索此特定问题时将您的答案包含在代码段中,顺便说一句。来自缺乏睡眠的未来的欢呼和感谢! (2认同)

小智 18

您也可以在同一命令中指明gemfile的路径,例如

BUNDLE_GEMFILE="MyProject/Gemfile.ios" bundle install
Run Code Online (Sandbox Code Playgroud)

  • 完美的答案。因为在我的情况下,我无法在任何地方获得访问包命令。`[root@alc bin]# BUNDLE_GEMFILE="../../apps/redmine/htdocs/Gemfile" ./bundle install` 是我要执行的命令。 (2认同)

小智 15

我在OSX机器上也有这个问题.我发现没有安装rails ...这让我感到惊讶,因为我认为OSX总是带有Rails.安装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:4000/ 它确实应该运行

  • 避免使用 `sudo` 来安装 gem。这会给你带来痛苦。阅读更多:https://thoughtbot.com/blog/psa-do-not-use-system-ruby (2认同)

for*_*een 9

你应该在同一个目录中 Gemfile


Dzi*_*mau 7

当我有类似的问题gem update --system帮助我.之前运行此bundle install


小智 7

我在 Ubuntu 18.04 上遇到了这个问题。我更新了宝石

sudo gem install rails
sudo gem install jekyll
sudo gem install jekyll bundler
cd ~/desiredFolder
jekyll new <foldername>
cd <foldername> OR 
bundle init
bundle install
bundle add jekyll
bundle exec jekyll serve
Run Code Online (Sandbox Code Playgroud)

一切正常并转到您的浏览器,只需转到http://127.0.0.1:4000/,它确实应该运行