1
votes

My ACS ACR38 reader works properly via it's SDK and GPJ but it's look like that JCManager can't access to it. This is output of JCManagr when I open it :

enter image description here

This is the error message :

Exception in thread "Thread-3" java.lang.NoClassDefFoundError: Could not initialize class com.linuxnet.jpcsc.PCSC
    at com.braicu.jcm.card.CardWorker.disconnectCard(CardWorker.java:507)
    at com.braicu.jcm.JCManager$22.construct(JCManager.java:619)
    at com.braicu.jcm.layout.MySwingWorker$2.run(MySwingWorker.java:108)
    at java.lang.Thread.run(Unknown Source)

I downloaded jpcsc.dll and copied it in this directories :

  1. C:\Windows\
  2. C:\Windows\System
  3. C:\Windows\System32
  4. D:\jcManager\res

D:\Java Card\jcManager\res

But when I try to register these files with regsvr32 command in the Command-Prompt I receive this error : enter image description here

I restart my system, and problem didn't solve yet.

Q: How can I handle this problem?

I appreciate your time and consideration.

1

1 Answers

2
votes

jpcsc is a very old library that does not seem to be maintained anymore. The last time I took a look at its structure and code I was actually rather horrified.

It looks however that somebody took notice and rewrote the tool to use javax.smartcardio. This much newer PCSC interface took quite a few hints from the older jpcsc and did a much better job at it.

You can find the source on github. I would recommend you upgrade to that version.