응용 프로그램 리소스에 네이티브 라이브러리를 넣을 수 있습니다. 예를 들어
Loads the native library specified by the filename argument. The filename argument must be an absolute path name.
: 내가 바람둥이를 사용하지 않고 일반적으로 사용하는 경우
InputStream dllResourceStream = null;
try {
ClassLoader cl = MyClass.class.getClassLoader();
// obtain dll resource stream
dllResourceStream = cl.getResourceAsStream("path/to/dll/resource");
File tmpFile = File.createTempFile("my_dll_name", ".dll");
// store dll to temp dirictory
Files.copy(dllResourceStream, tmpFile.toPath(), StandardCopyOption.REPLACE_EXISTING);
// load dll via absolute file path
System.load(tmpFile.getAbsolutePath());
} catch(AccessDeniedException e) {
throw new IOException("Unable to install twain libraries", e);
} finally {
if(dllResourceStream != null) resourceStream.close();
}
이 작동하는 응용 프로그램에서 당신이
System.load()
javadoc에 따라 (예를 들어) 임시 디렉토리에 저장하고 절대 파일 경로를로드 할 수 있습니다 시작 하지만 난 답을 얻을 수 없습니다. java.lang.NoClassDefFoundError 오류 : Cpro 클래스를 초기화 할 수 없습니다. \t AddStudent.doPost (AddStudent.java:41) \t javax.servlet.http.HttpServlet.service HttpServlet.java : 648) \t javax.servlet.http.HttpServlet.service (HttpServlet.java:729) \t org.apache.tomcat.websocket.server.WsFilter.doFilter (WsFilter.java:52) – siddh