2011-07-19 9 views
11

まず、私はRVMを使用しています...そして、私は宝石のリストを管理することについて多くのことを知らない。プッシュ、私は次のエラーを取得する:heroku dbでタップの問題:プッシュ

だから、私はHerokuのDBを使用してHerokuのに自分のDBをプッシュしようとした

$ sudo heroku db:push 
Taps Load Error: no such file to load -- taps/operation 
You may need to install or update the taps gem to use db commands. 
On most systems this will be: 

sudo gem install taps 

私は(sudoの宝石は今のタップ0.3.23でタップを、インストール)タップを設置しました私は最新のヒーローを持っています。なぜこれが起こっているのか分かりません...と私はそれについて多くの情報をオンラインで見つけることはできません。私はsudo heroku db:pushを実行しようとしましたが、何も変更されませんでした。

また、宝石をローカルにインストールしようとしましたが(?)、それは私に宝石の許可エラーを与えました。

ここに何が起こっているのでしょうか?

答えて

3

RVMを使用している場合は、決してsudoを使用しないでください。

プッシュが失敗したときに使用するRVMはどれですか?あなたは、そのルビーのためにインストールされたherokuとtapsの宝石が必要です。(やはりsudoはありません)。 "gem list heroku"と "gem list taps"を使って確認してください。それはherokutapsかのためにあなたの複数のバージョンを返す場合

which -a gem 
gem list 

+0

、再インストールしてください。だから私は今何をすべきか?私は宝石のインストールタップをしようとした...しかし、それは私に宝石の許可エラーを与えた。 ** Herokuの *** LOCAL GEMS *** $宝石のリストは *** LOCAL GEMSをタップ '$宝石リスト: はまた、ここに(!あなたの応答をありがとう)情報の別のビットをです* タップ(0.3.23) ' –

4

tapsを更新するだけでなく、あなたはまた、あなたが複数のバージョンを持っているかどうかを確認

gem update taps 
gem update heroku 

herokuを更新しなければなりません古いものを削除する必要があります:

gem uninstall taps gem uninstall heroku

また、rvmがインストールされ、動作していることを確認する必要があります。

コンソールに$ rvmと入力すると、出力が得られます。もしそうでなければ、再度rvmをインストールする必要がありますhere

rvm listとすると、さまざまなルビーバージョンが表示されます。 ruby -vで使用しているルビーのバージョンを確認してください。 1.9.2より新しい場合は、新しいルビーバージョンをインストールしてみてください。

11

場合、あなたは、その後、

gem install taps 

をRVMを使用している場合は、あなたではない、その後、

sudo gem install taps 

それはまだtapsを実行し、仕事とそれがエラーを生成した場合に表示されていない場合。私はsqlite3がインストールされていないと不平を言っていました。私はsqlite3の宝石をインストールし、それが

gem install sqlite3 

を働いそして、いや、私は自分のアプリケーション内のどこにsqlite3を使用していませんよ。あなたのエラーは他の依存関係によっても引き起こされる可能性があります。

それでも問題が解決しない場合は、Herokuのとタップの両方をアンインストールしてから、興味深い、私は見

gem uninstall heroku 
gem uninstall taps 
gem install heroku 
gem install taps 
+1

Herokuのツールベルトとタップを再インストールした後、同じ問題が発生しました - gem install sqlite3が私のためにdiffを作成しましたが、私のアプリでそれを使用していません – Mitch

+2

同じ問題。 sqlite3を使用せずにインストールすると、私はheroku dbを実行することができました:pull –