2012-08-28 3 views
3

Maven을 사용하여 애플릿에서 java.library.path을 어떻게 설정합니까? 일반적으로 JVM에 매개 변수를 전달하여 설정할 수 있습니다 (-Djava.library.path=path/path2). 하지만 어떻게하면 애플릿이 네이티브 라이브러리를로드하게 할 수 있습니까 java.library.path으로 지정 되었습니까?Maven. Set java.library.path

P. 난 네이티브 .dll을 사용하는 타사 Java lib를 사용합니다. 그래서 나는 쓸모없는 (어떤 경우 재시도에서 타사 lib 디렉토리가 java.library.path에서 .DLL 넣은 다음 던져 때문에 UnsatisfiedLinkError) System.loadLibrary(relativePath);

답변

1

Maven을 사용하여 애플릿에서 java.library.path을 어떻게 설정합니까?

AFIAU 네이티브가 응용 프로그램의 런타임 클래스 경로에있는 한 경로를 지정하지 않아도됩니다. JNLP에서 nativelib으로 참조 된 Jar의 루트에 넣으면됩니다.

+0

흠. 이상하게 들리지만'.dll'을'maven 프로젝트의'resources' 패키지에 넣었습니다.이 .dll은 classpath 안에 100 % 들어가서 jar 파일의 루트에 있습니다.하지만' UnsatisfiedLinkError'. – MyTitle

+0

해결되었습니다. ''을 (를)''(으)로 변경하는 것을 잊지 마십시오. 감사. 이 변경으로 인해 .jar에 몇 가지 추가 제한 사항이 적용되지 않기를 바랍니다. – MyTitle

+0

* "이 변경으로 인해 내 .jar가 일부 추가 제한에 노출되지 않기를 바랍니다."* 내가 아는 한 멀쩡합니다. 다행 이군. :) –

0

당신은 Maven이 방법에 대한 java.library.path를 설정할 수 있습니다 사용하여 기본 lib 디렉토리를 미리로드하려고 생각 이것은 프로그램이 실행될 때 설정되는 것이지 빌드 될 때 설정되지 않기 때문입니다.

애플릿의 경우 브라우저를 시작하기 전에 또는 브라우저를 시작하기 전에 LD_LIBRARY_PATH을 정확하게 설정해야합니다.

그렇지 않으면 절대 경로를 사용하여 DLL 또는 SO를 직접 검색해야합니다.

현재 : 애플릿에서 공유 라이브러리를 사용하려고 시도하는 데 보안 문제가있을 수 있습니다.

관련 문제