[英]`java.lang.UnsatisfiedLinkError` inside a jar which I build while running in Android 4.4.*
[英]java.lang.UnsatisfiedLinkError while running distributed jar
我的應用程序在NetBeans上運行良好,但是分布式jar文件出現了問題。
我讀過很多類似的文章,沒有任何運氣。
感謝您提出任何解決方案的想法!
C:\Users\dennis>java -jar "C:\Users\dennis\Documents\JavaApplication1\dist\JavaApplication1.jar"
Exception in thread "AWT-EventQueue-0" java.lang.UnsatisfiedLinkError: Native library not found. Tried to load tibrvnativesd64 and tibrvnativesd
at com.tibco.tibrv.Tibrv.loadNativeLibrary(Tibrv.java:392)
at com.tibco.tibrv.Tibrv.<clinit>(Tibrv.java:79)
at COM.TIBCO.hawk.console.nest.shared.TibrvProxy.open(TibrvProxy.java:33)
at COM.TIBCO.hawk.console.hawkeye.AgentMonitor.initialize(AgentMonitor.java:342)
at javaapplication1.TrayIconDemo.createHawkConsole(TrayIconDemo.java:122)
at javaapplication1.TrayIconDemo.access$100(TrayIconDemo.java:15)
at javaapplication1.TrayIconDemo$1.run(TrayIconDemo.java:52)
at java.awt.event.InvocationEvent.dispatch(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$000(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
Caused by: java.lang.UnsatisfiedLinkError: C:\tibco\tibrv\8.4\bin\tibrvnativesd.dll: Can't load IA 32-bit .dll on a AMD 64-bit platform
at java.lang.ClassLoader$NativeLibrary.load(Native Method)
at java.lang.ClassLoader.loadLibrary0(Unknown Source)
at java.lang.ClassLoader.loadLibrary(Unknown Source)
at java.lang.Runtime.loadLibrary0(Unknown Source)
at java.lang.System.loadLibrary(Unknown Source)
at com.tibco.tibrv.Tibrv.loadNativeLibrary(Tibrv.java:389)
... 20 more
該tibrvnativesd.dll
文件顯然是為32位計算機/操作系統創建的,而嘗試加載該應用程序的應用程序所在的計算機是64位計算機/操作系統。
查找/創建64位兼容的dll或在32位計算機上運行它...
我找到了解決這個問題的方法,這很簡單。
就我而言,NetBeans使用的是Java 32位,但是默認情況下命令提示符使用的是Java 64版本。
當我在命令提示符中明確指出Java 32位時,它工作正常。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.