2014-05-19 3 views
0

저는 JNI를 처음 사용하고 Visual Studio 2012에 C++ 코드를 작성하여 Windows 7에서 독립 실행 형 JNI 응용 프로그램을 성공적으로 실행했습니다. 그러나 apache-tomcat/webapps에서 새 JNI 프로젝트를 만들려고 할 때 나는 비슷한 문제를 많이 겪었지만 폴더 및 자바 클래스를 실행하려고, 나는 다음과 같은 오류 -톰캣 용 JNI 구성

Exception in thread "main" java.lang.UnsatisfiedLinkError: adjni.getStringArrays 
(Ljava/lang/String;Ljava/lang/String;)[[Ljava/lang/String; 
     at adjni.getStringArrays(Native Method) 
     at adjni.main(adjni.java:13) 

을 얻을, 나는 적절한 해결책을 찾을 수 없어. 어떤 환경 변수를 설정해야하는지, 어떤 다른 변경을해야하는지는 알지 못합니다. 문제는 자바 클래스가 dll 파일을 찾을 수 없다는 것이지만 문제를 해결하는 방법을 모른다는 것입니다. 도와주세요 . 당신이 도움이 될 수

다음 사항 System.loadLibrary("your library name");를 호출하기 전에 네이티브 메소드를 호출하려고 할 때 UnsatisfiedLinkError를 일반적으로

답변

0

은 무슨 일이 있었 : - 웹 응용 프로그램을 웹 응용 프로그램의 초기화 중에 라이브러리를로드되었는지 확인 (예 : ServletContextListener 구현 클래스에서 contextInitialized 메소드). - Tomcat에서 네이티브 라이브러리 파일에 액세스 할 수 있는지 확인하려면 classpath 문자열 (예 : -Djava.library.path 또는 LD_LIBRARY_PATH (Linux) 또는 PATH (Windows))을 확인하십시오.

어떻게 응용 프로그램을 독립 실행 형으로 실행 했습니까? 명령 줄을 쓸 수 있습니까? 네이티브 라이브러리는 어디에 두었습니까?

+0

Visual C++를 사용하여 독립 실행 형 프로그램을 실행했습니다. – Karthikeyan

+0

Java 독립 실행 형 응용 프로그램 및 실행 명령 줄에 .dll 파일을 포함시키는 방법 –

0

/bin 폴더에 dll 파일을 포함하고 java 파일과 클래스 파일을/WEB-INF/classes 폴더에 넣습니다. 이것은 나를 위해 일했다.