我最近买了一台Epson TM-T20打印机,目前正在尝试构建一个将利用它的java应用程序。我安装了打印机附带的JavaPOS,并将其相关的.jar文件添加到我的构建路径中。说了这么多,当我试图运行一些与它一起打包的示例时,我一直会遇到这个错误
线程"AWT-EventQueue-0"java.lang.UnsisfiedLinkError异常:java.library.path 中没有jp_co_epson_upos_firm_FirmNativeAccess_1_11_0001
如果跟踪堆栈的其余部分有助于
java.lang.ClassLoader.loadLibrary上的(未知源)位于java.lang.Runtime.loadLibrary0(未知源)位于java.lang.System.loadLibrary(未知源)位于jp.co.epson.upos.core.v1_0001.pntr.CommonPrinterService。(未知来源)位于java.lang.Class.forName0(本机方法)位于java.lang.Class.forName(未知源)在jp.co.epson.uposcommon.creator。EpsonJposServiceInstanceFactory。createInstance(未知源)位于jpos.loader.simple.SimpleServiceConnection.connect(未知源)在jpos。BaseJposControl.open(未知源)在Step1Frame.productWindowEvent(Step1Frame.java:79)位于java.awt.Window.processEvent(未知源)位于java.awt.Component.dispatchEventImpl(未知源)位于java.awt.Container.dispatchEventImpl(未知源)位于java.awt.Window.dispatchEventImpl(未知源)位于java.awt.Component.dispatchEvent(未知源)位于java.awt.EventQueue.dispatchEventImpl(未知源)位于java.awt.EventQueue.access$200(未知来源)位于java.awt.EventQueue$3.run(未知源)位于java.awt.EventQueue$3.run(未知源)位于java.security.AccessController.doPrivileged(本机方法)位于java.security.ProtectionDomain$1.doIntersectionPrivilege(未知源)位于java.security.ProtectionDomain$1.doIntersectionPrivilege(未知源)位于java.awt.EventQueue$4.run(未知源)位于java.awt.EventQueue$4.run(未知源)位于java.security.AccessController.doPrivileged(本机方法)位于java.security.ProtectionDomain$1.doIntersectionPrivilege(未知源)位于java.awt.EventQueue.dispatchEvent(未知源)位于java.awt.EventDispatchThread.pumpOneEventForFilters(未知源)位于java.awt.EventDispatchThread.pumpEventsForFilter(未知源)位于java.awt.EventDispatchThread.pumpEventsForHierarchy(未知源)位于java.awt.EventDispatchThread.pumpEvents(未知源)位于java.awt.EventDispatchThread.pumpEvents(未知源)在java.awt.EventDispatchThread.run(未知源)
其他信息
- 操作系统:W7 x64
- IDE:Eclipse Juno Service Release 1 x64
- 安装最新的JDK
- JavaPOS有一个名为setupPOS的应用程序。我还在该设置中添加了打印机
如有任何帮助,我们将不胜感激。谢谢
根据java文档,不满足链接错误异常为:
如果Java虚拟机找不到合适的声明为本机方法的本机语言定义。
根据SO中的另一个问题,您可以在这里阅读,问题可能在您的库路径中。尝试包括选项
-Djava.library.path=./XXX
在哪里/XXX将是存储打印机驱动程序的相对路径或完整路径(jp_co_epson_upos_firm_FirmNativeAccess_1_11_0001.dll或.so所在的目录)。
祝你好运!