Si desea crear varias versiones de cx_Oracle (p. ej., cx_Oracle10g, cx_Oracle11g, etc.), deberá modificar el script cx_Oracle setup.py. El último paso en el script es una llamada a setup()
; el primer parámetro es el nombre del módulo a construir. Todo lo que necesita hacer es cambiar "cx_Oracle"
a "cx_Oracle" + ver
, donde ver es 10g
, 11g
, etc. Cree varios scripts y codifíquelos, o agregue otro parámetro a setup.py
para seleccionarlo dinámicamente.
Por supuesto, una vez que tenga eso, necesita un mecanismo para cargar el módulo correcto en tiempo de ejecución. Para hacer eso, querrá crear su propio cx_Oracle
módulo que tiene un __init__.py
archivo que se parece a esto:
try:
from cx_Oracle9g import *
except ImportError:
try:
from cx_Oracle10g import *
except ImportError:
try:
from cx_Oracle11g import *
Todo lo que necesita hacer es enviar su cx_Oracle
personalizado módulo más el cx_OracleXg
correcto módulo con su aplicación.
Alternativamente, podría tener su cx_Oracle
personalizado el módulo verifica dinámicamente cada biblioteca de cliente de Oracle disponible (9g, 10g, 11g, etc.) y luego solo importa el cx_OracleXg
correspondiente correcto módulo. En este caso, solo tiene que enviar un único binario que contenga su cx_Oracle
personalizado. módulo más todos los cx_OracleXg
módulos.