为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

Smart猫小萌 2019-10-05 15:04:48
运行' sudo gem list --local'和' gem list --local'给我不同的结果。我的宝石路径设置为我的主文件夹,并且仅包含来自' gem list --local' 的宝石。在计算机上的不同目录中安装gems可能不是一件好事,所以我应该对gem路径进行不同的设置,并且sudo在安装某些东西时应该始终使用吗?my ~/.profileexport PATH=/opt/local/bin:/opt/local/sbin:$PATHexport PATH="/usr/local/bin:/usr/local/sbin:/usr/local/mysql/bin:$PATH"〜/ .bash_profile为空。
查看完整描述

3 回答

?
www说

TA贡献1775条经验 获得超8个赞

与其他所有建议相反,我建议sudo在安装gem时不要使用。


相反,我建议您安装RVM并开始生活在一个屋顶下的便携式宝石房屋和其他版本的Ruby,从而过上幸福的生活。


对于初学者,可以从文档中获取:


RVM是一个命令行工具,它使我们能够轻松地安装,管理和使用多个红宝石环境和宝石组。


之所以与安装宝石sudo不仅仅是糟糕的gem install是,因为它安装了宝石ALL USERS作为root。如果您是唯一使用此机器的人,这可能会很好,但如果不是,则可能会导致异常。


如果您决定要炸掉所有的宝石,然后重新开始,那么以非root用户的身份进行操作会更容易,更安全。


如果您决定要使用,RVM则使用sudo会引起各种怪异,因为您安装的每个Ruby版本RVM都有其自己的GEM_HOME。


同样,如果您可以使您的开发环境尽可能地接近生产环境,那就太好了,并且在生产中,您很有可能会以非root用户身份安装gem。


查看完整回答
反对 回复 2019-10-05
?
天涯尽头无女友

TA贡献1831条经验 获得超9个赞

相关(适用于捆绑用户),如果您想用更轻巧的替代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。


查看完整回答
反对 回复 2019-10-05
  • 3 回答
  • 0 关注
  • 957 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信