找不到 Gemfile

Posted

技术标签:

【中文标题】找不到 Gemfile【英文标题】:Could not locate Gemfile 【发布时间】:2011-03-20 18:52:48 【问题描述】:

我当然不是 Ruby 开发人员,但我的服务器上有一个使用 Ruby、Gems 和 Bundler 的应用程序。我正在尝试在不同的用户帐户下但在同一个 VPS 上安装另一个 Ruby。当我去跑步时

bundle install

我收到以下错误:

我可以删除 ./bundle 目录的内容,以便重新获取所有 Gem 以清除错误,但这会对使用相同 Gem 和 Bundler 的其他应用程序产生影响吗?我不想冒险关闭其他应用程序。

【问题讨论】:

【参考方案1】:

您在运行该命令的目录中没有GemfileGemfile 是一个文件,其中包含 当前 程序的 gem 设置。

【讨论】:

谢谢。事情就是这么简单。我只是遇到了一个问题,因为我必须以管理员用户身份登录才能运行命令,但 gemfile 位于不同用户下的目录中。我设法把它整理好。谢谢! 是的,你是对的,如果你使用这个命令安装redmine,你应该'cd [redmine-directory]'然后执行那个命令。【参考方案2】:

在运行bundle install 之前,请确保您位于项目目录中。例如,在运行rails new myproject 之后,您将希望在运行bundle install 之前先运行cd myproject

【讨论】:

是的,这确实是问题所在,我最终设法解决了问题。感谢您的帮助。【参考方案3】:

我遇到了同样的问题,通过使用不同的目录解决了。

bash-4.2$ 捆绑安装 找不到 Gemfile bash-4.2$ 密码 /home/amit/redmine/redmine-2.2.2-0/apps/redmine bash-4.2$ cd htdocs/ bash-4.2$ ls app config db extra Gemfile lib 插件 Rakefile 脚本 tmp bin config.ru doc files Gemfile.lock log public README.rdoc test vendor bash-4.2$ cd 插件/ bash-4.2$ 捆绑安装 使用 rake (0.9.2.2) 使用 i18n (0.6.0) 使用 multi_json (1.3.6) 使用 activesupport (3.2.11) 使用构建器 (3.0.0) 使用 activemodel (3.2.11) 使用 erubis (2.7.0) 使用旅程 (1.0.4) 使用机架 (1.4.1) 使用机架缓存 (1.2) 使用机架测试(0.6.1) 使用远足 (1.2.1) 使用倾斜 (1.3.3) 使用链轮 (2.2.1) 使用动作包 (3.2.11) 使用 mime 类型 (1.19) 使用多语言 (0.3.3) 使用树顶 (1.4.10) 使用邮件 (2.4.4) 使用 actionmailer (3.2.11) 使用 arel (3.0.2) 使用 tzinfo (0.3.33) 使用活动记录 (3.2.11) 使用活动资源 (3.2.11) 使用 Coderay (1.0.6) 使用 rack-ssl (1.3.2) 使用 json (1.7.5) 使用 rdoc (3.12) 使用雷神 (0.15.4) 使用铁轨 (3.2.11) 使用 jquery-rails (2.0.3) 使用 mysql2 (0.3.11) 使用 net-ldap (0.3.1) 使用 ruby​​-openid (2.1.8) 使用 rack-openid (1.3.1) 使用捆绑器 (1.2.3) 使用导轨 (3.2.11) 使用 rmagick (2.13.1) 你的捆绑我

【讨论】:

【参考方案4】:

我解决了类似的问题,只是退出项目目录,然后 cd 回到项目目录并捆绑安装。

【讨论】:

【参考方案5】:

这是你可以尝试的。

将此添加到您用于运行应用程序的任何配置文件中。

ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../../Gemfile', __FILE__)
require 'bundler/setup' # Set up gems listed in the Gemfile.
Bundler.require(:default)

Rails 和其他基于 Rack 的应用程序使用此方案。有时您会尝试运行一些比 Gemfile 通常所在的根目录更深的目录。 当然,你现在解决了这个问题,但偶尔我们都会在寻找 Gemfile 时遇到麻烦。我有时喜欢你也可以在 .bundle 目录中拥有所有的宝石。 把这个网站地址放在你的枕头底下永远不会有什么坏处。 http://bundler.io/

【讨论】:

【参考方案6】:

很简单。当它显示“无法找到 Gemfile”时,这意味着在您当前所在的文件夹或您所在的目录中,没有名为 GemFile 的文件。因此,在您的命令提示符中给出该文件夹的显式或完整路径,其中此类文件名为“Gemfile”,例如 cd C:\Users\Administrator\Desktop\RubyProject\demo。

肯定会在一分钟内解决的。

【讨论】:

以上是关于找不到 Gemfile的主要内容,如果未能解决你的问题,请参考以下文章

CircleCI 说在您的 Gemfile 中列出的任何源中都找不到您的包

Rails:Gemfile.lock 需要“找不到捆绑程序”(2.2.11)。 (Gem::GemNotFoundException)

在您的 Gemfile 中列出的或本机上可用的任何 gem 源中找不到 gem 'wdm (>= 0.1.0) x64-mingw32'

您的捆绑包被锁定为 mimemagic (0.3.5),但在您的 Gemfile 中列出的任何源中都找不到该版本 [重复]

Bundler 找不到 gem 的兼容版本

jruby Bundler 找不到兼容的 json 版本