の特定のバージョンが必要です。私は2.5.xで失敗し、2.6.xに合格するテストがあるので、ユーザーが2.6.x以上を使用していることを確認したい。私はあなたがRubyGemsののexplicitly update the versionをすることができます知っていますが、何らかの形で定期的に宝石のために特定のバージョンのことができますように「必要」ことができますか?は、私はプロジェクトのため<strong>RubyGemsの</strong>の特定のバージョンを持ちたいRubyGemsの
答えて
私はそれが単一Rubyのインストールで複数のRubyGemsのバージョンの中から選択することができます信じていません。しかし、必要なバージョンが使用されていることを確認することができます。 Gemfile(Rubyファイルのみ)の先頭や、バンドルを使用しないスクリプトの冒頭など、アプリケーションの起動時に早く実行される場所を次のように記述します。
required_rubygems_version = '2.6.0'
if Gem.rubygems_version < Gem::Version.create(required_rubygems_version)
raise "Please upgrade to rubygems #{required_rubygems_version}"
end
あなたは、Ruby Gemsのバージョンが間違っている場合は、アプリケーションの起動からRailsのを防ぐことができますあなたのconfig/initializers
でスタートアップチェックを追加することができます。
config/initializers/gem_version_check.rb
で新しいファイルを作成し、このコードを追加:
required_rubygems_version
if Gem.rubygems_version < Gem::Version.new(required_rubygems_version)
raise RuntimeError, "Ruby Gems version is #{Gem.rubygems_version}, but this project requires Ruby Gems >= #{required_rubygems_version} to be used."
end
これは、例外を発生させるとRuby Gemsのバージョンは、起動時に間違っている場合は、アプリケーションの初期化が失敗する原因になります。
/Users/spock/devo/games/config/initializers/gems_version_check.rb:3:in ` ':ルビー宝石のバージョンは2.4.8ですが、このプロジェクトは、Rubyの宝石> = 2.6を使用することが必要です。 (RuntimeError)
これは、Railsサーバーが開始されるたびに、またすべての環境で実行されるため、テスト環境と本番環境が適切に構成されていることの健全性チェックも実行されます。
このアプローチでは、ルビジェンが2桁のマイナーバージョン番号(例:2.10.0)を持つ場合に誤検出が発生します。しかし、これまでのところはありませんでした! –
私は将来Rubyistsのために、より堅牢なバージョンチェックを行っています。 –
- 1. Rubygemsのは、私はエラーにRubyGemsを取得--versionのRubyGemsを実行したときに、私はルビー2.1.2とRubyGemsのインストールが、している
- 2. RubyGemsの:mp3info
- 3. エラーインストールRubyGemsの
- 4. ユーザーアカウントは、私はプロジェクトフォルダ内のコマンド</p> <pre><code>bundle install </code></pre> <p>を実行していますRubyGemsの
- 5. このような..</p> <p>を私たちのコードベースのために特定の文字列
- 6. rbenv rubyのバージョンで特定のrubygemsを使用するにはどうすればよいですか?
- 7. config.jsのは、私はCKEditorバージョンのための私の<code>config.js</code>に次きCKEditorバージョン
- 8. Rubygems、Bundler、RVMの混乱
- 9. RubyGems依存エラー
- 10. Rubygems 2.7.3セットアップエラー
- 11. 設定のデフォルト値は、私たちの<strong>Moodleの</strong>インストールで
- 12. django.db.utils.OperationalErrorは:FATAL:ピア認証は、ユーザーのために失敗した私はMacOSの</p> <p>での私のプロジェクトを開発し、私は約Ubuntuの中の製品私のプロジェクト(AWS)は</p> <p>(イムごめんたい
- 13. 初心者のためのWindows(またはオンライン)Webワークフロー? (rubygemsは混乱しています)
- 14. </strong>私たちのトレーナー<strong>私はカスタム・タイプのポストを持っているWordpressのページテンプレート
- 15. RubygemsとBundler:遅いスタートアップ
- 16. RubyGemsのは、自動的に特定の宝石時にインストール、という私を見つけた私は現在、赤い帽子で5</p> <p>をルビー1.9.3のインストールを管理しています
- 17. にNullPointerException:私は私のプロジェクト</p> <p>私のために25.0.1のverこのアンドロイドサポートライブラリを使用
- 18. 私は特定のパス</b>にPDF <b>としてキャンバスを保存したい特定のパス
- 19. コマンドラインアプリケーションを動作させるためにRubyGemsがロードパスに追加したパスを特定できますか?
- 20. は私が私のプロジェクトのために</p> <p>をDAO工場を構築していreturn文
- 21. は、私は両方の長所を持ちたい</p> <p>:-)私の質問を明確にするためにSAXパーサ
- 22. Gemfileにrubygemsバージョンを入れてください
- 23. 私はRuby 1.9.3とRubygems 1.8.15をインストールしてください。
- 24. RubyGemsのにNPM相当ありNPM
- 25. Rubygems、Bundler、およびRVMの関係
- 26. RubyGemsプラグインの読み込みエラー、openssl.bundle(LoadError)
- 27. PHP致命的なエラー:私は<strong>PHP 5.6</strong>バージョンを持っているが、それでも、私は<strong>CodeIgniterの</strong>プロジェクトを実行するためにCPanelのを使用していると私は、このエラーを得たそのエラー</p> <p>に直面しているCPanelの
- 28. は、ときに私のフォームのロードのため、私は私が私のDBから<strong>表</strong>(<em>人</em>)のうち、それを埋める<strong>のListBox</strong>(<em>listContacts</em>)(<em>DB1.mdf</em>)を持っている
- 29. module-info.java私は<strong>への移行時に私はJava 9を更新した後、私はプロジェクトを実行しようと</strong></p> <p>のJava 9.私たちのプロジェクトを問題に直面した9
- 30. たちはADAL</p> <p>を使用して私たちのネイティブアプリのためのAzure AD認証を実装している
どのようなコンテキストで必要ですか? – tadman
@tadmanはどういうわけか、テストを実行し、RubyGemsの自身の彼らのバージョンが必要なバージョンの下にあるコードを開発しようとしている開発者に警告します。 'bundle install'を実行すると正しい宝石がインストールされますが、RubyGemsについては何も言いません。 'ruby-2.3.1'は' rubygems-2.5.x'をインストールしていますが、 'rubygems-2.6.x'だけで解決された問題があったので問題が発生しました。答えは「ドキュメントに追加する」ことができると思いますが、他のすべてがチェックできるので、これも同様に可能であると私は期待していました。 –
「ドキュメントに追加」の手順のように聞こえます。 – tadman