2016-08-12 19 views
7

Tôi đang chạy brakeman bên ngoài Gemfile của tôi, vì vậy không sử dụng bundler.Làm thế nào để chạy một phiên bản cụ thể của đá quý ruby ​​

Nếu tôi làm gem list, tôi có thể thấy tôi có sau cho brakeman

brakeman (3.3.3, 3.3.2, 3.1.4, 3.1.2) 

Nhưng nếu tôi làm brakeman --version, tôi nhận được

brakeman 3.1.2 

vì vậy tôi đang không sử dụng phiên bản mới nhất. Nếu tôi làm gem update brakeman hoặc

gem update brakeman, '3.3.3, 

tôi nhận được

Updating installed gems 
Nothing to update 

Vì vậy, làm thế nào để tôi chạy brakeman phiên bản 3.3.3?

Trả lời

3

Tôi không thể tạo lại vấn đề này, nhưng tôi có thể nghĩ đến một vài lý do tại sao điều này có thể xảy ra:

  • Bundler hiện vật (có lẽ trong .bundle/) trỏ đến các phiên bản cũ. Thử chạy trong một thư mục khác nhau và xem nếu nó vẫn xảy ra
  • Một lỗi trong RubyGems (thử gem update --system)
  • Trong cài đặt, nó hỏi nếu bạn muốn thay thế brakeman nhị phân và bạn chọn "không"
  • Nếu bạn đang sử dụng một trình quản lý phiên bản Ruby, có thể một phiên bản là trên một con đường khác với nhau (như một viên ngọc hệ thống so với từng người rvm quản lý)
  • Bất kỳ số GEM_PATH, bundler, gem, rvm weirdness rằng đôi khi xảy ra

Trong mọi trường hợp, nếu tôi là bạn, tôi muốn gem uninstall brakeman, xóa tất cả các phiên bản và cài đặt mới. Nếu bạn đang sử dụng rvm, hãy bắt đầu bằng một viên đá quý mới hoặc rvm gemset empty mã hiện tại.

+0

Đây là lựa chọn hạt nhân, nhưng nó sẽ hoạt động.Tôi đang sử dụng rvm. Tôi sẽ thử nó. – Obromios

+0

Điều đó làm việc cảm ơn bạn. – Obromios

-2
$ gem install brakeman -v 3.3.3 

sau đó trong Gemfile bạn (giả sử bạn có một) trỏ đến rằng phiên bản cụ thể, như:

"brakeman", "~> 3.3.3" 
9

Nếu bạn có một vài phiên bản đá quý cài đặt và bạn muốn gọi một phiên bản cụ thể từ các lệnh -ngày, bạn có thể sử dụng:

brakeman _3.3.3_ [args go here] 

Điều này không cụ thể cho brakeman, bạn có thể làm điều này cho hầu hết các loại đá quý khác.

+0

Nếu tôi làm '' 'brakeman _3.3.3_ --version''' nó vẫn trả về 3.1.2, vậy tôi có thực sự chạy 3.3.3 không? – Obromios

+0

Hmm, thật kỳ lạ. Đầu ra của bạn là 'brakeman' nào? – awendt

+1

Tôi đã thử điều này trên một hệ thống khác và nó hoạt động. Phải có một cái gì đó lạ với cài đặt brakeman của tôi. Tôi đã upvoted câu trả lời của bạn. – Obromios

Các vấn đề liên quan