2014-01-30 4 views
0

Я купил термопечати Epson TM-T88IV. Я установил Epson JavaPOS ADK с помощью руководства по установке.JavaPOS - Epson TM-T88IV - UnsatisfiedLinkError в Eclipse

Затем я добавил Jar-файлы из папки lib из Epson JavaPOS в Eclipse и написал простую программу, которая подключается к принтеру.

public class MainClass { 
    public static void main(String[] args) 
    { 
     //System.out.println("Ausgabe aus der main()-Methode"); 

     POSPrinterControl113 ptr = (POSPrinterControl113)new POSPrinter(); 

     try { 
      //Open the device. 
      //Use the name of the device that connected with your computer. 
      ptr.open("EPSON_TM_T88IV"); 

      //Get the exclusive control right for the opened device. 
      //Then the device is disable from other application. 
      ptr.claim(1000); 

      //Enable the device. 
      ptr.setDeviceEnabled(true); 
     } 
     catch(JposException ex) { 
     } 
    } 
} 

Но я получаю эти ошибки:

Exception in thread "main" java.lang.UnsatisfiedLinkError: no jp_co_epson_upos_firm_FirmNativeAccess_1_13_0001 in java.library.path 
    at java.lang.ClassLoader.loadLibrary(Unknown Source) 
    at java.lang.Runtime.loadLibrary0(Unknown Source) 
    at java.lang.System.loadLibrary(Unknown Source) 
    at jp.co.epson.upos.core.v1_13_0001.pntr.CommonPrinterService.<clinit>(CommonPrinterService.java:1004) 
    at java.lang.Class.forName0(Native Method) 
    at java.lang.Class.forName(Unknown Source) 
    at jp.co.epson.uposcommon.util.EpsonJposServiceInstanceFactory.createInstance(EpsonJposServiceInstanceFactory.java:142) 
    at jpos.loader.simple.SimpleServiceConnection.connect(Unknown Source) 
    at jpos.BaseJposControl.open(Unknown Source) 
    at MainClass.main(MainClass.java:15) 

можно напечатать что-то с «CheckHealth.bat»

Имеет кто-то идея решить эту проблему?

С наилучшими пожеланиями

Meinzelmaenchen

  • Я использую Windwos 8.1 (64-Bit)
  • Термальный принтер подключен по USB
  • Версия EPSON JavaPOS ADK является 1,13 .15
  • Новые 32-разрядные Java-версии Java JDK и JAI установлены

ответ

0

вам просто нужно включить dir с файлами драйвера epson (jp_co_epson_upos_firm_FirmNativeAccess_1_13_0001.XX) в путь класса, в centos, например, вам нужно будет перейти в /home/username/.bash_profile и добавить экспорт LD_LIBRARY_PATH =/opt/EpsonJavaPOS/bin

1

java.lang.UnsatisfiedLinkError означает, что Java не может найти нужную Системную библиотеку. «Системная библиотека» означает в этом случае НЕ библиотеку баннеров. «Системная библиотека» означает библиотечный файл операционной системы (DLL в Windows).

Вам необходимо изменить (в Windows) переменную PATH и добавить правильный каталог, в котором хранятся необходимые библиотеки Epson JavaPOS. Или вы можете альтернативно установить правильный путь при запуске приложения Java с параметром «-Djava.library.path», например:

java.exe -Djava.library.path=c:\path\to\dlls\ -cp c:\my\class\path my.app.Main 

EDIT:

Путь вам нужно указать является каталог, в котором хранятся DLL jp_co_epson_upos_firm_FirmNativeAccess*.dll. Процедура установки Epson JavaPOS ADK хранила эти файлы в каталоге bin JRE, который вы указали при установке ADK.

 Смежные вопросы

  • Нет связанных вопросов^_^