問題タブ [bundler]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ruby-on-rails - 「geminstallbundle--version = 0.8.1」は、バンドル実行可能ファイルをインストールしません
UbuntuマシンにBundler0.8.1をインストールしようとすると、正常にインストールされますが、実行可能ファイルの「バンドル」はどこにも表示されません。実行可能ファイルを含む他のgemは正常にインストールされます。
使用:gem install bundler --version=0.8.1
パス/home/ahammad/gems/bin
がに追加されましたPATH
。問題は、バンドルexeがないことです。
何か案は?
ruby-on-rails - Rails 3 アプリ サーバーの起動時間が長い
更新 2これは、Ruby 1.9.2 がファイルをロードする方法に関する既知のバグ/機能です。 http://twitter.com/#!/rails/status/72801149769621504
更新:これは質問として始まりましたが、これに少し取り組んだ後、修正できない可能性があると思います. 他の誰かが同じことを見て、レールとバンドラーの内部で何が起こっているのか疑問に思っている場合に備えて、これを投稿すると思いました。
Rails 3 アプリのロード時間が長いと感じている人はいますか? environment.rb、application.rb、boot.rb、railties/lib/rails/initializable.rb にタイマーを配置しました。時間は秒単位で測定され、経過時間は最後に記録された時間からの時間です。プロダクションの読み込み時間は少し長くなります。ハードウェアが少ないことと、eager_load が原因の 1 つです。(そしておそらくThin vs Mongrelから)。Bundler が読み込み時間の大きな部分を占めているように見えますが、それは当然のことだと思います。dev と prod でアプリの 1 つをテストし、dev で空のアプリを 1 つテストしました。Thin が原因であるかどうかを確認するためだけに、2 つのアプリ サーバーをテストしました。また、prod の Passenger でも同様の現象が見られます (これにより、2.2.15 のスポーン動作で使用できなくなります)。エッジ Rails に対してテストしたところ、dev のパフォーマンスは 14.5 秒と 14.2 秒でわずかに劣っていました。テストの依存関係を削除すると、2 ~ 3 秒節約できますが、テストを実行しているときには役に立ちません。すべての Thin インスタンスが再起動するまで 5 分間待機し、テストが実行されるまで 15 秒間待機するのは少し面倒だと思いますが、Rails 3 で得られる生産性のために、現時点では許容できるトレードオフです。物事をスピードアップするのに役立つアイデア、私はすべて耳です。テスト結果は次のとおりです。
注: Rails 2.3 の私のアプリは、dev で 3 秒未満でロードされました (ただし、rails3 に移行してから、コードの一部をエンジンに変換し、haml と twitter_oauth の gem を追加しました)。
**Rails 3RC と Ruby 1.9.2rc2 を使用して実施されたすべてのテスト
Prod with Thin - CentOS 5.5、Rackspace クラウド サーバー 2GB インスタンス
24 個の gem 依存関係を持つテスト アプリ #1
Dev with Mongrel - Max OSX 10.5.8、2.66 Core2duo、4GB RAM
Test App #1、24 gem の依存関係あり
2 つの gem 依存関係を持つ Mongrel Test App #2 を使用した 開発
ruby-on-rails - Railsでいくつかのバンドルされたgemをプラグインの読み込みから除外するにはどうすればよいですか?
依存関係の管理にBundlerを使用するRailsアプリケーションがあります。私は私の中に次のものを持っていますGemfile
:
Bundler.setup(:default, RAILS_ENV.to_sym)
とを初期化子で呼び出しBundler.require(:default, RAILS_ENV.to_sym)
ます。
問題は、Bundlerがgemをに配置するためvendor/bundle/
、Railsは、現在の環境のgemだけでなく、を含むすべてのgemを初期化することです。init.rb
RailsがFooを自動的にロードしないようにするにはどうすればよいinit.rb
ですか?
git - Bundler::gitソースを使用した`バンドルパッケージ`
(herokuに)デプロイする前にアプリにgemをパッケージ化させようとしていますGemfile内のgemの1つは、作成したカスタムgemであり、bundlerの:gitオプションを使用して特定のタグを使用しています私の興味のあるもの:
ただし、実行するとbundle package
、このgemはベンダー/キャッシュディレクトリに含まれていません。これは既知の問題ですか?つまり、Bundlerはパッケージ化された.gemファイルではなくgitソースを使用するgemをパッケージ化しませんか?
ドキュメントにはどちらの方法も記載されていませんが、この:gitオプションを使用することで、実際にgemをビルドしてどこかでホストする手間が省けることを本当に望んでいました。(このコードはすべてオープンソースでもパブリックでもないので、gemcutterにプッシュしたくありません)
また、公開鍵の問題により、herokuはデプロイ時にgitソースにアクセスできないため、最初にgemをパッケージ化する必要があることにも注意してください。
ruby - Ruby Bundler 権限の問題
だから、私はかつてsudo bundle install
必死になってやったことがあると確信しています。しかし、今、実行しようとするとbundle install
、次のエラーが発生します。
~/.bundle ~/.gem .bundle Gemfile.lock のすべてと、/Library/Ruby (OSX 10.6) の culerity または capybara への参照をすべて削除しようとしました。また、このプロジェクト内のすべてのファイルで権限が (root ではなく) 正しく設定されていることを確認しました。gemキャッシュもクリアしました。
私の Gemfile:
また、システムに rvm がありますが、このプロジェクトではシステム Ruby を使用しています。
許可の問題の原因についてのアイデアはありますか? 確かに、私は の使用に行き詰まっていませんsudo bundle install
。
ありがとう。
ruby-on-rails - Rails 3: パッセンジャーがバンドラーによってインストールされた git gem を見つけられない
Rails 3.0.0、パッセンジャー 2.2.15:
- 新しい Rails プロジェクトを作成する
gem 'paperclip', :git => 'git://github.com/lmumar/paperclip.git', :branch => 'rails3'
Gemfileに追加する- 行う
bundle install
- すべてOK、から始めて
rails/script server
アクセスすることもできます - ただし、Passenger でアクセスすると、次のように表示されます。
git://github.com/lmumar/paperclip.git (rails3) はチェックアウトされていません。実行してくださいbundle install
(Bundler::GitError)
.htaccess と config/*.rb のさまざまな場所でbundler pack
BUNDER_HOME を ~/.bundler (Paperclip git によってそこにインストールされます) に設定して (役に立たない) 試しましたが、これも成功しませんでした。bundler install
~/.bundler は Rails プロジェクトと同じユーザーが所有しているため (Passenger はこのユーザーの下で実行されます)、パーミッションの問題にはなりません。sudo がインストールされ、 によって呼び出されbundle install
ます。
ヒントはありますか?
ruby - 柔軟なgem依存関係を持つRubyGems?
より大きなプロジェクトの主要な機能をrubygemに抽出しようとしています。
私が作成した小さなフレームワークは、さまざまなインポート/エクスポートオプションのために、いくつかの追加のgemを使用しています。つまり。
- csvインポート/エクスポート用のFasterCSV(ruby 1.8の場合)
- csvインポート/エクスポート用のノコギリ
- グラフのGraphViz..。
- ..。
gemのユーザーが、必要のないときにすべてのgemをインストールしてロードすることは望ましくありません。
それは可能ですか?
ruby-on-rails - Rails 3、バンドラー、LoadError
指定したフォルダーでスクリプトを実行し、数値を記録してグラフ化するアプリを作成しています。
私の問題は、スクリプトが ruby ファイルである場合、スクリプト内で require ステートメントが失敗することです。
実行にrails runner Datasource.run_jobs
失敗します:
ruby-on-rails - バンドラーにプラットフォームごとに異なるgemを使用させる
Rails2.3.8アプリの1つをRails3にアップグレードする作業を行っていますが、バンドラーとデプロイで厄介な問題が発生しました。Windowsマシンでアプリケーションを開発していますが、実稼働環境ではUbuntuLinuxが実行されています。さて、私の問題は、バンドラーがmysql
本番環境でgemを無視していて、Passengerが次のように吐き出していることです。
これが私のGemfile
:
ご覧のとおり、mysql
gemが指定されています。ただし、デプロイするとき、bundlerはそれを無視します。なんで?その理由は、Bundlerが以下を生成するためですGemfile.lock
(関連するパーツのみが含まれます)。
プラットフォーム固有のgemが含まれていることに注意してください。Linuxで実行している場合、そのgemは適切ではない(そして一見無視されている)ため、これは明らかに私が望んでいることではありません。
では、Bundlerにはこれらの問題に対処する方法がありますか?Gemfile.lock
または、開発マシンでバンドルインストールを実行するたびに、生成されたmysql gemバージョンを手動で変更することを覚えておく必要がありますか?
前もって感謝します!
アップデート
バンドラーチームはこの問題を認識しているようです。
ruby-on-rails - Rails 3のGemfileのグループ?
RailsのGemfileには、次のグループがあります。
これは何を意味するのでしょうか?