1

ruby-0ci8 gem と oracle_enhanced アダプター gem を正常にインストールした後、Rails プロジェクト サーバーを起動しようとすると、次のエラーが表示されます。

=> Booting WEBrick
=> Rails 3.0.3 application starting in development on http://0.0.0.0:3000
=> Call with -d to detach
=> Ctrl-C to shutdown server
Exiting
/Library/Ruby/Gems/1.8/gems/activerecord-oracle_enhanced-adapter-1.3.2/lib/active_record/connection_adapters/oracle_enhanced_oci_connection.rb:7: 
ERROR: ActiveRecord oracle_enhanced adapter could not load ruby-oci8 library. 
Please install ruby-oci8 gem. (LoadError)

強化されたアダプターと ruby​​-oci8 gem の両方が gem リストに表示されます。どちらも Gemfile に存在します。アダプターが oci8 ライブラリーを見つけられないのはなぜですか?

私が実行しているセットアップの仕様:

  • Mac Snow Leopard (10.6.8)
  • Ruby 1.8.7 (2009-06-12 パッチレベル 174) [i686-darwin10.8.0]
  • レール3.0.3
  • ruby-oci8 (2.0.4) [gem]
  • activerecord-oracle_enhanced-adapter (1.3.2) [gem]

この投稿を見てきました: Rails 3.0.3 - Oracle_enhanced doesn't work。しかし、それは役に立ちません。他の誰かがこれに遭遇しますか?

==============================

答え

私はそれを理解しました。結局、オラクルインスタントクライアントのファイルを保存していた /usr/local/oracle/instantclient_10_2/ に間違ったファイル構造がありました。それがすべての問題の原因でした。基本的に、最初のディレクトリ内に2番目のinstantclient_10_2ディレクトリをネストし、.bash_profileをその下のディレクトリではなく最初のディレクトリで検索しました。

4

3 に答える 3

11

走るsudo apt-get install libaio1

于 2012-07-16T21:21:11.617 に答える
2

- 基本的に、次の 2 行を Gemfile に追加しました。

  1. gem 'ruby-oci8', '~> 2.0.6'

  2. gem 'activerecord-oracle_enhanced-adapter', '~>1.4.0'

-次に、コマンドラインで次を実行しました。

バンドル インストール

-Gemfileに他のバージョンのruby-oci8またはactiverecord-oracle_enhanced-adapterがないことを確認してください


- 通常のオラクル アクティブ レコード アダプタの場合、代わりに次の行を追加しました。

  1. gem 'ruby-oci8', '~> 1.0.4'

  2. gem 'activerecord-oracle-adapter', '~>1.0.0.9250'

-次に、コマンドラインで次を実行しました。

バンドル インストール

Rails 3.0.3 - Oracle_enhanced が機能しない

于 2011-11-16T19:32:48.270 に答える
0

この問題は、プラットフォーム固有の問題の gems リストに記載されています。最も可能性の高い解決策は、 Oracle Instant Clientのセットアップ方法に関するガイドに従うことです。

于 2011-08-10T20:01:36.400 に答える