'sudo gem install'或'gem install'和gem位置

运行' sudo gem list --local'和' gem list --local'给我不同的结果。我的宝石路径设置为我的主文件夹,并且仅包含来自' gem list --local' 的宝石。


在计算机上的不同目录中安装gems可能不是一件好事,所以我应该对gem路径进行不同的设置,并且sudo在安装某些东西时应该始终使用吗?


my ~/.profile

export PATH=/opt/local/bin:/opt/local/sbin:$PATH

export PATH="/usr/local/bin:/usr/local/sbin:/usr/local/mysql/bin:$PATH"

〜/ .bash_profile为空。


Smart猫小萌
浏览 971回答 3
3回答

www说

与其他所有建议相反,我建议sudo在安装gem时不要使用。相反,我建议您安装RVM并开始生活在一个屋顶下的便携式宝石房屋和其他版本的Ruby,从而过上幸福的生活。对于初学者,可以从文档中获取:RVM是一个命令行工具,它使我们能够轻松地安装,管理和使用多个红宝石环境和宝石组。之所以与安装宝石sudo不仅仅是糟糕的gem install是,因为它安装了宝石ALL USERS作为root。如果您是唯一使用此机器的人,这可能会很好,但如果不是,则可能会导致异常。如果您决定要炸掉所有的宝石,然后重新开始,那么以非root用户的身份进行操作会更容易,更安全。如果您决定要使用,RVM则使用sudo会引起各种怪异,因为您安装的每个Ruby版本RVM都有其自己的GEM_HOME。同样,如果您可以使您的开发环境尽可能地接近生产环境,那就太好了,并且在生产中,您很有可能会以非root用户身份安装gem。

天涯尽头无女友

相关(适用于捆绑用户),如果您想用更轻巧的替代RVM,将所有内容放在用户特定的知名目录中,我建议使用:bundle install --path $HOME/.gem如果您想将gems安装到同一位置gem install --user-install GEMNAME将它们安装.gem/ruby/RUBYVERSION在您的homedir中。(请参阅有关此问题的其他评论--user-install。)这将使宝石对用户可见gem list,可通过进行卸载gem uninstall,而无需sudo访问。通过gem或bundler安装的可运行脚本可以通过添加到您的路径中$HOME/.gem/ruby/RUBYVERSION/bin给你$PATH。gem如果设置时没有设置,它本身会告诉您gem install --user-install。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Ruby