ruby – 如何配置gem才能使用系统宝石?

ruby – 如何配置gem才能使用系统宝石?,第1张

概述我想配置gem只使用系统宝石 – 永远不要在$HOME / .gem中.这是因为我正在编写一个将访问Gem.path的脚本,我不希望它返回我的主目录中的gems路径. 我很确定我没有在我的.bashrc,.bash_login等中明确设置GEM_HOME或类似内容. 但是Gem.path首先返回我的homedir宝石: irb> Gem.path=> ["/home/nfm/.gem/ruby 我想配置gem只使用系统宝石 – 永远不要在$HOME / .gem中.这是因为我正在编写一个将访问Gem.path的脚本,我不希望它返回我的主目录中的gems路径.

我很确定我没有在我的.bashrc,.bash_login等中明确设置GEM_HOME或类似内容.

但是Gem.path首先返回我的homedir宝石:

irb> Gem.path=> ["/home/nfm/.gem/ruby/1.9.1","/usr/local/lib/ruby/gems/1.9.1"]

我可以阻止这种情况发生吗?在哪里配置?或者它只是首先在homedir中查看的默认值?

如果我无法配置,我可以使用regexp Hackery返回gems的系统路径吗?

更多细节:

which ruby/usr/local/bin/rubyruby --versionruby 1.9.2p0 (2010-08-18 revision 29036) [x86_64-linux]gem env  - RUBYGEMS VERSION: 1.3.7  - RUBY VERSION: 1.9.2 (2010-08-18 patchlevel 0) [x86_64-linux]  - INSTALLATION DIRECTORY: /usr/local/lib/ruby/gems/1.9.1  - RUBY EXECUtable: /usr/local/bin/ruby  - EXECUtable DIRECTORY: /usr/local/bin  - RUBYGEMS PLATFORMS:    - ruby    - x86_64-linux  - GEM PATHS:     - /usr/local/lib/ruby/gems/1.9.1     - /home/nfm/.gem/ruby/1.9.1  - GEM CONfigURATION:     - :update_sources => true     - :verbose => true     - :benchmark => false     - :backtrace => false     - :bulk_threshold => 1000  - REMOTE SOURCES:     - http://rubygems.org/

更新:

显然这可以在〜/ .gemrc中配置:

# Note the use of a symbol before the colon - the string version doesn't work!:gempath:  - /usr/local/lib/ruby/gems/1.9.1

但是,如果你启动irb,这似乎没有生效.这与配置文件是YAML这一事实有关,显然当irb启动时没有加载yaml(不确定这个!):

$irb> Gem.path=> ["/home/nfm/.gem/ruby/1.9.1","/usr/local/lib/ruby/gems/1.9.1"]> Gem.configuration.path=> ["/usr/local/lib/ruby/gems/1.9.1"]# Ready for a WTF moment?> Gem.path=> ["/usr/local/lib/ruby/gems/1.9.1"]

所以,下面的答案似乎是获得正确行为的唯一一致方法,即使你假设〜/ .gemrc可以工作,并且将是一个更好的方式来包装你的配置.

但是,在我的〜/ .gemrc中设置:gempath:在Rails应用程序中我的Rakefile中的脚本的上下文中工作,可能是因为yaml被明确加载.

不确定yaml到底发生了什么,但这个解释似乎与我在这里看到的一致.

修改! :P

解决方法 在这里覆盖它:

#in ~/.bashrcexport GEM_PATH=/usr/local/lib/ruby/gems/1.9.1
总结

以上是内存溢出为你收集整理的ruby – 如何配置gem才能使用系统宝石?全部内容,希望文章能够帮你解决ruby – 如何配置gem才能使用系统宝石?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://www.outofmemory.cn/langs/1277589.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-09
下一篇 2022-06-09

发表评论

登录后才能评论

评论列表(0条)

保存