Как правильно загрузить драйвер DB2 в AIX 5.3 - PullRequest
0 голосов
/ 19 июля 2011

У меня возникла эта надоедливая проблема загрузки драйвера DB2 из приложения JAVA в AIX5.3, вот что я получил:

java.sql.SQLException: java.lang.UnsatisfiedLinkError: db2jdbc (файлили каталог с именем пути не существует.) в COM.ibm.db2.jdbc.app.DB2Driver. (неизвестный источник) в java.lang.Class.newInstanceImpl (собственный метод) в java.lang.Class.newInstance (класс.java: 1243) at com.hp.sm.doctor.collection.commandLineConsole.CommandLineEntryMain.main (CommandLineEntryMain.java:143)

Я много гуглил, кажется, я все настроил, но это исключениене уйдет .. Вот подробности: PATH = / usr / java5 / bin: / usr / bin: / etc: / usr / sbin: / usr / ucb: / usr / bin / X11: / SBIN: / USR / java14 / JRE / бен: / USR / java14 / бен: / Главная / scuser / SC6283 / RUN: / Главная / fpeSM / SQLLIB / бен: / Главная / fpeSM / SQLLIB / адм: / Главная /fpeSM / sqllib / misc CLASSPATH = / home / fpeSM / sqllib / java / db2java.zip: /home/fpeSM/sqllib/java/db2jcc.jar: / home / fpeSM / sqllib / java / sqlj.застежка-молния: / Главная / fpeSM / SQLLIB / функция: / Главная / FPESМ / SQLLIB / Java / db2jcc_license_cu.jar :. LIBPATH = / usr / lib: / lib: / home / fpeSM / sqllib / lib64

Я запускаю свой скрипт с помощью

java -cp / home / fpeSM / sqllib/java/db2java.zip:/home/fpeSM/sqllib/java/db2jcc.jar:/home/fpeSM/sqllib/java/sqlj.zip:/home/fpeSM/sqllib/function:/home/fpeSM/sqllib/lib32: /home/fpeSM/sqllib/java/db2jcc_license_cu.jar:.: smdoctor.jar com.hp.sm.doctor.collection.commandLineConsole.CommandLineEntryMain

Может кто-нибудь сказать мне, что суть, чтобы заставить все это работать?Большое большое спасибо!PS, libdb2jdbc.so существует в /home/fpeSM/sqllib/lib64.

Чет

Ответы [ 2 ]

0 голосов
/ 22 июля 2011

Попробуйте указать Java, где расположены нативные библиотеки DB2, добавив -Djava.library.path=/home/fpeSM/sqllib/lib64:... к вашей команде.Ваши переменные и команды PATH и CLASSPATH вызывают некоторые вопросы:

  • Зачем вам две разные версии Java (1.4 и 5), доступные в PATH?
  • Кажется, две версиидрайверы DB2 доступны на CLASSPATH.db2java.zip предоставляет драйверы DB2 JDBC типа 2 и 4, а db2jcc.jar предоставляет драйвер DB2 JDBC типа 4.DB2 покончила с драйвером JDBC типа 2 где-то в конце версии 8 или в начале 9.
  • Установлены ли 32-битные и 64-битные библиотеки?Если вы используете 32-разрядную версию Java, убедитесь, что ваша библиотека является 32-разрядной.Я не знаком с AIX, но для Linux я бы использовал file libdb2jdbc.so, чтобы проверить, является ли это 32-битной или 64-битной библиотекой.
0 голосов
/ 19 июля 2011

Даже

  1. каково содержимое файла db2java.zip?
  2. Пожалуйста, распакуйте его и посмотрите, есть ли у него jar-файлы и собственные двоичные файлы. Поместите файлы JAR в путь к классам и двоичные файлы в пути.
  3. Если zip-файл содержит только jar-файлы, поместите все эти jar-файлы в classpath.
  4. Помещение zip-файла в classpath не поместит в него jar-файлы в classpath. Вам нужно будет извлечь файлы jar и поместить их в classpath.
...