【问题标题】:Install bundler on MacOS with out using sudo?在不使用 sudo 的情况下在 MacOS 上安装捆绑程序?
【发布时间】:2018-11-27 23:56:02
【问题描述】:

我正在运行 MacOS 10.14.1,如果不使用 sudo 安装捆绑程序,则无法安装 Jekyll。这是一种解决方法吗?

当我跑步时:

gem install bundler jekyll

我明白了:

ERROR:  While executing gem ... (Gem::FilePermissionError)
    You don't have write permissions for the /Library/Ruby/Gems/2.3.0 directory.

使用sudo 可以安装所有内容,但我一直在阅读有关使用sudo 安装gem 的文章,因为这是一种不好的做法。有解决办法吗?

【问题讨论】:

    标签: macos rubygems jekyll bundler


    【解决方案1】:

    我也是 Jekyll 用户。但是,我没有遇到这个问题。我相信是因为我使用 rbenv 来管理 Ruby,并且先用它安装了 2.5.3。

    我强烈建议您查看rbenv。虽然我确实发现管理 Ruby 设置起来有点麻烦,但一旦设置好,它就可以很好地工作。

    如果你有一个专用的、非系统安装的 Ruby,你就不需要 sudo。从那里,您还可以使用bundle install --path vendor/bundle 将您的宝石真正包含到您当前的项目中。

    祝你好运,希望这会有所帮助。

    【讨论】:

      【解决方案2】:

      您可以随时安装到用户目录:

      % ruby -r rubygems -e 'puts Gem.user_dir'
      /Users/muru/.gem/ruby/2.3.0
      % gem install bundler --user-install
      WARNING:  You don't have /Users/muru/.gem/ruby/2.3.0/bin in your PATH,
            gem executables will not run.
      Successfully installed bundler-2.0.2
      Parsing documentation for bundler-2.0.2
      Installing ri documentation for bundler-2.0.2
      Done installing documentation for bundler after 3 seconds
      1 gem installed
      

      除了使用--user-install选项,您还可以设置和导出GEM_HOME

      export GEM_HOME=$(ruby -r rubygems -e 'puts Gem.user_dir')
      gem install bundler # will install to ~/.gem/ruby/...
      

      要使用以这种方式安装的捆绑程序,如警告所述,您需要将该路径添加到$PATH

      PATH="$GEM_HOME/bin:$PATH"
      

      【讨论】:

        猜你喜欢
        • 2019-04-13
        • 2012-03-10
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-09-05
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多