Rubygem报no such name xxx.gemspec.rz的解决

这个有可能你本地网络的原因,也有可能是gem源的问题,我采取的方法是更换gem源.

你可以使用如下命令显示gem源列表:

gem sources -l

你可以使用如下命令来删除和新增源:

gem sources --remove https://rubygems.org/
gem sources -a http://ruby.taobao.org/

然后你可以更新源缓存:

gem sources -u

上面的命令可能根本没有回显,如果有也往往是出错或发生变更时的回显,我怎么知道它到底做了什么检查呢!?

这时linux/unix系统统一的知识体系显示出威力了!因为我知道在linux下一条命令要想开启”噪声”模式,要在命令后添加-v或-V参数,所以我才十有八九gem的命令也是这个套路,所以我首先尝试使用-v参数开启”噪声”模式:

gem sources -u -v
#回显如下
apple@kissAir: ~$gem sources -u -v
GET http://gems.ruby-china.org/specs.4.8.gz
302 Moved Temporarily
GET http://gems-ruby-china.b0.upaiyun.com/specs.4.8.gz
304 Not Modified
GET http://gems.ruby-china.org/latest_specs.4.8.gz
302 Moved Temporarily
GET http://gems-ruby-china.b0.upaiyun.com/latest_specs.4.8.gz
304 Not Modified
GET https://ruby.taobao.org/specs.4.8.gz
302 Moved Temporarily
GET https://gems.ruby-china.org/specs.4.8.gz
302 Moved Temporarily
GET https://gems-ruby-china.b0.upaiyun.com/specs.4.8.gz
304 Not Modified
GET https://ruby.taobao.org/latest_specs.4.8.gz
302 Moved Temporarily
GET https://gems.ruby-china.org/latest_specs.4.8.gz
302 Moved Temporarily
GET https://gems-ruby-china.b0.upaiyun.com/latest_specs.4.8.gz
304 Not Modified
ERROR:  While executing gem ... (Gem::RemoteFetcher::UnknownHostError)
    no such name (https://rubygem.org/specs.4.8.gz)

你可以看到除了最后一个源名解析上有问题,其他源都进行了更新检查,但都没有变更.这样心里就有底啦!起码我知道这条命令做了许多事.

最后还有一种修改源的方法,在~用户根目录下,打开.gemrc文件:

---
:backtrace: false
:bulk_threshold: 1000
:sources:
- http://gems.ruby-china.org/
- https://ruby.taobao.org/
- https://rubygem.org
:update_sources: true
:verbose: true
install: --no-rdoc --no-ri
update: --no-rdoc --no-ri

你可以在这里直接修改gem源的顺序或其他参数.

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

大熊猫侯佩

赏点钱让我买杯可乐好吗 ;)

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值