アプリがインストール済みの gem を使用できないようにしたい。ruby 1.9の起動パラメータまたはプログラムでこれを行う方法はありますか?
2 に答える
ruby --disable-gems
MRI (1.9) コマンドライン パラメータです。「デフォルトのロードパスへのgemインストールディレクトリの追加を防ぎます」。(Ruby プログラミング言語、p. 391)
編集 2012 年 10 月 25 日: Ruby コアは、コメントで @rogerdpack と同じ考えを持ち、より詳細なruby --help
パラメーターを追加しました。ルビーリビジョン!
rubygems 構成ファイルを見て、ハックアウトするgempath
かgemhome
、デフォルトを (単に追加するのではなく) 上書きできるかどうかを確認しようとします。
たとえば、gempath
空に設定したり、 を指すように設定したりして/dev/null
、システム gem を使用できない場合は、それが適切な方法です。
私が見ているように、これの主な利点は、Ruby 1.9 に起動パラメーターとして渡され (コード化されていないため)、十分に文書化され、リポジトリにチェックインできることです。
もちろん、これはすべて、rubygems が ruby 1.9 の標準ライブラリの一部であることを無視したものです。そのため、Ruby の基本インストールで gem 機能が必要な量に応じて、gem にアクセスできない場合、ruby は窒息して死ぬ可能性があります。YMMV。