我有一個Java應用程序試圖加載外部庫,但我不斷得到相同的異常。錯ELF類:ELFCLASS64
Caused by: java.lang.UnsatisfiedLinkError: /test/software/libraries/libraries/bin/libxejni.so: ld.so.1: java: fatal: /test/software/libraries/libraries/bin/libxejni.so: wrong ELF class: ELFCLASS64 (Possible cause: architecture word width mismatch)
at java.lang.ClassLoader$NativeLibrary.load(Native Method) ~[?:1.7.0_79]
at java.lang.ClassLoader.loadLibrary1(ClassLoader.java:1965) ~[?:1.7.0_79]
at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1890) ~[?:1.7.0_79]
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1880) ~[?:1.7.0_79]
at java.lang.Runtime.loadLibrary0(Runtime.java:849) ~[?:1.7.0_79]
at java.lang.System.loadLibrary(System.java:1088) ~[?:1.7.0_79]
這與32位JVM嘗試加載64位本機共享庫有關。但是我的Java版本是64位
Java版本 「1.7.0_79」 的Java(TM)SE運行時環境(建 1.7.0_79-B15)的HotSpot的Java(TM)64位服務器VM(建24.79- b02,混合模式)
該應用程序是使用maven構建的,任何人都有任何線索可以在這裏找到問題?
感謝
您確定實際運行*的Java版本是64位版本嗎?只需從命令行運行'java -version'就不一定會顯示應用程序正在使用的JVM(例如,如果它是一個Web應用程序)。 –
是的,它被部署在Java 1.7的solaris服務器上64位 – user3520080