【问题标题】:Uninstall non-existing Ruby gem卸载不存在的 Ruby gem
【发布时间】:2015-02-21 23:05:13
【问题描述】:

当启动 Ruby on Rails WEBrick 服务器 (Ubuntu 14.04) 时,会出现以下消息:“警告:您正在使用带有 Spring 的 Rubygems 1.8.23。升级到至少 Rubygems 2.1.0 并运行 gem pristine --all 以获得更好的启动性能。”

我已经升级了 Rubygems 并运行了 gem pristine --all,但似乎在使用 thor gem 时遇到了问题。原因是我安装了以下thor gem 版本(根据gem list 命令):

雷神 (0.19.1, 0.18.1.20140116)

并且任何地方都没有'thor' gem 版本 0.18.1.20140116。我无法卸载它,我无法安装它。如果我安装卸载0.18.1版本,完全不影响0.18.1.20140116版本。

所以gem pristine --all 命令在检查thor 时停止并出现以下错误:

恢复 thor-0.19.1 未找到 thor-0.18.1.20140116 的缓存 gem,正在尝试获取... 错误:执行 gem 时...(Gem::Exception) 无法在 /home/****/******/****** 中的 [/usr/share/rubygems-integration/1.9.1/cache/thor-0.18.1.20140116.gem] 加载 gem ***

我怎样才能从系统中删除那个有趣的 0.18.1.20140116 版本或让gem pristine 不检查thor gem?

谢谢!

【问题讨论】:

  • gem which thor 返回什么?

标签: ruby gem spring-gem


【解决方案1】:

卸载“thor 0.18.1.20140116”时是否有任何错误信息?

我想知道卸载所有版本的thor并重新安装0.19.1是否有帮助。

gem uninstall thor # Select "All versions" here
gem install thor -v 0.19.1

【讨论】:

  • 不幸的是,thor (0.18.1.20140116) 字符串仍保留在gem list 命令的结果中,位于gem uninstall thor 之后。当我尝试删除这个特定版本时,它会抛出 INFO: gem "thor" is not installed 错误。问题在于20140116
  • 嗯...你看过这篇文章吗?感觉很相似:Error encountered running: sudo -i gem pristine --all 还有这个GitHub thread
【解决方案2】:

我通过删除解决了这个问题

/usr/share/rubygems-integration/1.9.1/specifications/thor-0.8.1.20140116.gemspec

使用 root 权限手动操作。

谢谢大家的帮助!

【讨论】:

    猜你喜欢
    • 2017-07-23
    • 1970-01-01
    • 2011-08-19
    • 2012-07-17
    • 2012-04-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多