나는 스캔을 위해 jar 파일에서 TWAIN 라이브러리를 사용하는 프로젝트를 가지고 있습니다. Eclipse IDE에서 프로젝트를 실행하는 동안이 라이브러리를 사용하는 데 성공했습니다. this 사진에서 볼 수 있듯이 예상 한대로 설치된 장치 목록을 감지합니다.TWAIN은 프로젝트를 .jar 파일로 내 보낸 후 더 이상 설치된 장치를 감지하지 않습니다.
하지만 내 프로젝트를 Runnable JAR 파일로 내보내고 '생성 된 JAR에 필요한 라이브러리를 패키지화'하도록 선택하면 갑자기 스캔이 중지되고 동일한 장치 목록을 확인하면 this처럼 비어 있습니다.
처음으로 프로젝트를 내보내려고했는데 JAR 내부에서 그림을로드 할 수 있도록 리소스 폴더를 구성해야한다는 것을 고려하면 비슷한 문제라고 생각합니다. 그러나 두 경우 모두 TWAIN 라이브러리가로드되었음을 나타내는 다음 메시지를 반환하기 때문에 이유를 정확히 알지 못합니다.
JarLib.load: Successfully loaded library[jar:rsrc:uk.co.mmscomputing.device.twain.jar!/uk/co/mmscomputing/device/twain/win64/jtwain.dll] from jar file location
하지만 난 스캔 할 때, 이것은 내가 무엇을 얻을 수 있습니다 :
uk.co.mmscomputing.device.twain.TwainIOException: uk.co.mmscomputing.device.twain.TwainSource.select(String name)
Cannot find twain data source: 'Lenovo EasyCamera'
at uk.co.mmscomputing.device.twain.TwainSource.select(TwainSource.java:239)
at uk.co.mmscomputing.device.twain.TwainSourceManager.selectSource(TwainSourceManager.java:82)
at uk.co.mmscomputing.device.twain.jtwain.cbexecute(jtwain.java:231)
at uk.co.mmscomputing.device.twain.jtwain.nstart(Native Method)
at uk.co.mmscomputing.device.twain.jtwain.access$200(jtwain.java:12)
at uk.co.mmscomputing.device.twain.jtwain$1.run(jtwain.java:338)uk.co.mmscomputing.device.twain.TwainFailureException: Failed during call to twain source.
cc=No Data Source
rc=1
at uk.co.mmscomputing.device.twain.TwainSourceManager.call(TwainSourceManager.java:27)
at uk.co.mmscomputing.device.twain.TwainIdentity.open(TwainIdentity.java:70)
at uk.co.mmscomputing.device.twain.TwainSource.open(TwainSource.java:99)
at uk.co.mmscomputing.device.twain.TwainSourceManager.openSource(TwainSourceManager.java:93)
at uk.co.mmscomputing.device.twain.jtwain.cbexecute(jtwain.java:234)
at uk.co.mmscomputing.device.twain.jtwain.nstart(Native Method)
at uk.co.mmscomputing.device.twain.jtwain.access$200(jtwain.java:12)
at uk.co.mmscomputing.device.twain.jtwain$1.run(jtwain.java:338)
내가이 JAR로 내 프로젝트를 짓고 있어요 때, 여전히 일부 DLL 또는 파일을 놓치고 있다는 것이 가능하다 포장해야합니까?