【问题标题】:Installing a gem blocked?安装gem受阻?
【发布时间】:2013-10-25 06:02:29
【问题描述】:

(免责声明:我对 RubyGems 很陌生。)我有一个 Sinatra 应用程序,其中有大量 require 关键字,所以我想将它们移动到 Gemfile 中。到目前为止,所有这些(DataMapper、Prawn 等)都可以正常工作,直到我遇到这个:

gem install sinatra-static-assets

它有这个错误消息:Permission denied - /Users/daryll/.rvm/gems/ruby-2.0.0-p247/gems/sinatra-static-assets-1.0.4/.gitignore。我也尝试过 bundler,但有同样的错误信息。

尝试通过sudo gem install 强制它(不知道这是否有效),但它似乎不起作用(我能够运行应用程序但我得到一个“undefined method stylesheet_link_tag”,这意味着宝石没有被看到吗?)。什么给了?

宝石文件

source 'https://rubygems.org'

gem "sinatra", "1.4.3"
gem "sinatra-static-assets", "~> 1.0.4"
gem "json", "~> 1.8.0"
gem "data_mapper", "~> 1.2.0"
gem "dm-sqlite-adapter", "~> 1.2.0"
gem "prawn", "~> 0.12.0"
gem "active_support", "~> 3.0.0"

Config.ru

require 'bundler'
Bundler.require

require './app'
run Sinatra::Application

【问题讨论】:

  • 你能成功运行gem install sinatra吗?
  • @Davidann 是的。我尝试再次运行bundle install,同样的错误消息。 @AaronGray我的机器上有RVM,你到底是什么意思? (顺便说一句,我通过rackup 启动我的应用程序)。
  • @AaronGray 谢谢,我可以使用第三个链接安装 gem。但是我仍然在我的 Sinatra 应用程序中收到 undefined method stylesheet_link_tag。知道为什么吗? (也许我可以在睡觉时更好地调试它。)
  • 使用 RVM 时不要使用sudo。即使对于多用户安装,在初始 RVM 安装后也不会使用 sudo。一般来说,相信 RVM 网站上的建议胜过任何/所有其他网站,因为他们编写了它并且比任何人都知道它是如何工作的。我强烈建议您通读他们的整个installation page,然后阅读他们的troubleshooting page,因为听起来您的配置有问题。

标签: ruby rubygems gem sinatra bundler


【解决方案1】:

我想这会解决你的问题:stackoverflow.com/questions/5583422/rvm-gem-install-error

sinatra_static_assets 的说明建议运行 sudo gem install sinatra-static-assets -s http://gemcutter.org - 你试过使用它吗?

此外,请务必按照官方页面上的说明进行操作,以确保您已正确配置 - https://github.com/wbzyl/sinatra-static-assets/

【讨论】:

    【解决方案2】:

    另一个答案的两种选择:

    1。使用 Bundler 沙箱化您的 gem

    我现在一直用这个:

     bundle install --binstubs --path vendor
    

    它将所有 gem 放在 ./vendor 目录中,并将所有可执行文件放在 ./bin 中。在项目目录中运行它,例如

     $ cd /home/myRubyProjects/MyAmazingProject/
     $ bundle install --binstubs --path vendor
    

    之后您可以运行bundle install,因为设置保存在.bundle 中。无需 sudo 或 gemset,也无需担心来自其他项目的 gem 会被践踏或交互。

    2。 Sinatra Exstatic 资产

    我对 gem 做了一个分支,它发生了很大的变化,以至于 became its own library

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-08-21
      • 2011-06-21
      • 1970-01-01
      • 1970-01-01
      • 2013-01-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多