Исключение Java: java.lang.UnsatisfiedLinkError: ocijdbc11.dll:% 1 не является допустимым приложением Win32 - PullRequest
6 голосов
/ 18 января 2012

Я пытаюсь установить соединение с оракулом через Java-программу. Ниже приведена конфигурация.

  1. Windows 7, 64 бит.
  2. JDK 1.6
  3. клиент Oracle 11g R2, 64 бит.
  4. ojdbc6.jar в пути к классам моего отдельного приложения.

Но я получаю следующее исключение- " java.lang.UnsatisfiedLinkError: \ bin \ ocijdbc11.dll:% 1 не является допустимым приложением Win32 "

Я много гуглил, но не смог найти решение.

Пожалуйста, помогите мне решить эту проблему.

Заранее спасибо.

Ответы [ 3 ]

1 голос
/ 18 января 2012

Эта ошибка связана с совместимостью версии драйвера OCI с вашей версией Windows.
Проверьте, совместим ли ваш драйвер OCI с 32-битной архитектурой или для 64-битной (и, следовательно, с ошибкой).

Здесь (https://forums.oracle.com/forums/thread.jspa?threadID=2189215) вы можете найти близкую связанную ошибку (та же ошибка, для другой библиотеки), которая, наконец, была исправлена ​​загрузкой специфической для S.O. версии библиотеки и переустановкой ее.

РЕДАКТИРОВАТЬ : поэтому после вашей редакции кажется, что вам нужно установить 64-битный JDK и запустить на нем свое приложение, поскольку ваш драйвер и ваша ОС выровнены (64-битная).

0 голосов
/ 13 марта 2017

Эта ошибка возникает только в Windows, чтобы решить, просто скопируйте вашу DLL в C: \ Windows \ System32, она работает для меня!

0 голосов
/ 19 марта 2012

Эта ошибка также может возникать в 64-битной версии Java 7 и использовании 32-битных драйверов Oracle. Предполагалось, что приложение, которое я использовал, должно было использовать 32-битную Java 6, но администратор установил Java 7, что, по-видимому, и привело к этой ошибке.

...