複数のcx_Oracleバージョン(例:cx_Oracle10g、cx_Oracle11gなど)をビルドする場合は、cx_Oraclesetup.pyスクリプトを変更する必要があります。スクリプトの最後のステップは、setup()
の呼び出しです。;最初のパラメーターは、ビルドするモジュールの名前です。 "cx_Oracle"
を変更するだけです。 "cx_Oracle" + ver
へ 、ここでverは10g
、11g
、など。いくつかのスクリプトを作成してハードコーディングするか、setup.py
に別のパラメータを追加します。 動的に選択します。
もちろん、それを取得したら、実行時に正しいモジュールをロードするメカニズムが必要です。そのためには、独自のcx_Oracle
を作成する必要があります。 __init__.py
を持つモジュール 次のようなファイル:
try:
from cx_Oracle9g import *
except ImportError:
try:
from cx_Oracle10g import *
except ImportError:
try:
from cx_Oracle11g import *
あなたがする必要があるのはあなたのカスタムcx_Oracle
を出荷することだけです モジュールと正しいcx_OracleXg
アプリケーションのモジュール。
または、カスタムのcx_Oracle
を使用することもできます。 モジュールは、使用可能な各Oracleクライアントライブラリ(9g、10g、11gなど)を動的にチェックしてから、一致する正しいcx_OracleXg
のみをインポートします。 モジュール。この場合、カスタムのcx_Oracle
を含む単一のバイナリを出荷するだけで済みます。 モジュールとすべてのcx_OracleXg
モジュール。