2011-07-27 4 views
1

클래스 B에 대한 jni 헤더를 얻으려고하고 클래스 A 바로 옆에 동일한 패키지에 앉아있다.Javah Not B 클래스에서 작동 할 때 클래스 (B)에서 언급 한 클래스 (A)

클래스 B는 기본 기능 (있는 나는 JNI 헤더 필요)

를 포함하고 내가 명령

javah -jni ClassB -classpath (path to jarfile containing all the classes necessary, including classA) 

를 사용하고 난 응답을

"찾을 수 없습니다 클래스 WXYZ를 얻을 수 ClassA "

여기서 wxyz는 classA 및 classB의 올바른 패키지 경로입니다.

제안 사항?

답변

1

옵션을 먼저 넣고 끝 부분에만 ClassB 인수를 넣어보십시오.

또한 클래스 경로는 패키지 디렉토리가 아니라 패키지 계층 구조의 루트를 가리켜 야합니다. 다음과 같이 호출하십시오.

javah -jni -classpath library.jar w.x.y.z.ClassB 
+0

빙고. 나는 'w'가 들어있는 폴더로 이동하여 거기에 내 jar 파일을 옮긴 다음 javah w.x.y.z.ClassB가 훌륭하게 작동했습니다. 고마워요! – sparkFinder

+0

jar 파일에 상대 경로를 사용할 수도 있습니다. –

관련 문제