![](/img/trans.png)
[英]How does one upgrade a specific ruby gem to a specific (or the latest) version?
[英]How to run a specific version of a ruby gem
我在我的Gemfile之外運行剎車手,所以我沒有使用捆綁器。
如果我做gem list
,我可以看到我有以下制動器
brakeman (3.3.3, 3.3.2, 3.1.4, 3.1.2)
但如果我做brakeman --version
,我得到
brakeman 3.1.2
所以我沒有使用最新版本。 如果我做gem update brakeman
或
gem update brakeman, '3.3.3,
我明白了
Updating installed gems
Nothing to update
那么如何運行brakeman版本3.3.3?
如果您安裝了多個gem版本並且想要從命令行調用特定版本,則可以使用:
brakeman _3.3.3_ [args go here]
這不是制動員特有的,你也可以為大多數其他寶石做這件事。
我無法重現這個問題,但我可以想到為什么會發生這種情況的幾個原因:
.bundle/
)指向舊版本。 嘗試在不同的目錄中運行,看看它是否仍然存在 gem update --system
) brakeman
二進制文件並選擇“否” rvm
管理的rvm
) GEM_PATH
, bundler
, gem
, rvm
怪異 在任何情況下,如果我是你我gem uninstall brakeman
,刪除所有版本,並安裝新鮮。 如果您使用的是rvm
,請從新的gemset或rvm gemset empty
當前的。
我遇到了類似的問題:我卸載了某個寶石版本,但版本仍然出現了。
TL; DR: rbenv rehash
完成了這個伎倆。 (顯然只對rbenv
用戶有效)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.