我有一些数据库导入和导出ant脚本,它们运行很少的java程序来从oracle 11g导入和导出数据。
这些脚本曾用于Vista 32位,但已停止使用Windows 7 64位。我可以使用ocijdbc11.dll的两个版本。
当我使用64位版本时,错误消息是:java.lang.UnsatisfiedLinkError:C:\ tools \ oracle \ ocijdbc11.dll:无法在IA 32位平台上加载AMD 64位.dll。
当我使用32位版本时,错误消息是:java.lang.UnsatisfiedLinkError:C:\ tools \ oracle \ ocijdbc11.dll:%1不是有效的Win32应用程序。
有谁知道我需要改变什么才能解决这个问题?
答案 0 :(得分:5)
抱歉,我不是Windows大师,但我也使用了11g来自windows java,但不是oci驱动程序,而是包含瘦驱动程序的ojdbc14.jar。据我所知,这个驱动程序不需要原生dll。
jar中的11不是oracle服务器版本,而是与之一起使用的JDK版本。因此ocijdbc11是兼容JDK 1.1的驱动程序。您应该使用ojdbc14.jar,ojdbc5.jar或ojdbc6.jar(ojdbc14.jar也适用于Java 6,但ojdbc6.jar不适用于Java 1.4)。