【问题标题】:Permission issues using terminal for ruby rails an rubymine使用终端进行 ruby​​ rails an ruby​​mine 的权限问题
【发布时间】:2012-11-22 16:22:36
【问题描述】:

刚开始在 Rails 上学习 Ruby。目前正在尝试安装一些有权限问题的 gem

Last login: Tue Dec  4 19:21:30 on ttys000
unknown-00-1c-b3-c0-49-e2:~ Wushu$ gem install
ERROR:  While executing gem ... (Gem::CommandLineError)
Please specify at least one gem name (e.g. gem build GEMNAME)
unknown-00-1c-b3-c0-49-e2:~ Wushu$ 

我使用的是 mac os x 10.6。
我尝试在我的 Mac 上使用实用程序清理我的权限,但仍然遇到同样的问题

【问题讨论】:

    标签: ruby macos permissions rubygems terminal


    【解决方案1】:

    这不应该是:

     gem install << name of gem here >>
    

    不只是:

     gem install
    

    -- 编辑--

    安装单个 gem 的更好方法是使用 bunder。当然,如果您使用的是 Ruby on Rails。

    在您的 gemfile 中,添加相关的 gem:

    来源“http://rubygems.org”

    gem 'rails'
    gem 'mysql2', '~> 0.3.10'
    
    # Gems used only for assets and not required
    # in production environments by default.
    group :assets do
      gem 'sass-rails',   '~> 3.2.3'
      gem 'coffee-rails', '~> 3.2.1'
      gem 'uglifier', '>= 1.0.3'
    end
    

    然后运行

    bundle install
    

    在 Rails 应用程序根目录中

    【讨论】:

    • 感谢 Simon,尽管这可行,但我在尝试安装一些 gem 时仍然遇到问题。
    • 另外一点,你为什么不使用 bundler 来更新你的应用程序中的 gem??
    • 我不建议使用 sudo 来尝试安装 gem,因为它可能会导致奇怪的行为
    • 我同意 Leo Correa 的观点,即 sudo 不好,但可以解决权限问题。将我提出的捆绑程序建议与 Leo 使用 RVM 的建议混合起来,您将成为赢家。
    【解决方案2】:

    就像@simonmorley 所说,您绝对应该使用 rails 应用程序中的 Gemfile 来处理安装 gem 等以及捆绑程序。

    您可能还想研究 rvm 来管理不同项目的 ruby​​ 版本和 gemset。

    至于您的错误,您需要在执行命令 gem install &lt;some_gem_name&gt; 时提供一个 gem 名称,请注意 gem 不会在您的 Rails 应用程序的上下文中运行,并且当您决定在另一台计算机/服务器上使用您的应用程序时不知道使用您正在安装的那个gem。所以就像我说的,将它包含在你的 Gemfile 中,它会在以后为你省去任何麻烦。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-09-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-11-21
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多