я triyng, чтобы сгенерировать файл заголовка для собственного использования (c / c ++) из файла java, используя eclipse.
из командной строки я могу добраться только до джавы, когда нахожусь в этом месте:
C:\Program Files (x86)\Java\jdk1.7.0_51\bin>
но я не могу ссылаться на мой класс Java, как это:
C:\Program Files (x86)\Java\jdk1.7.0_51\bin>javah -jni com.or.jnihelloworld.nativeclass
потому что класс, расположенный за пределами этой папки в:
C:\Users\Or Azran\workspace\JniHelloWorld\src\NativeLib.java
и я хочу сделать этот файл в папку jni в:
C:\Users\Or Azran\workspace\JniHelloWorld\jni
как я могу сделать это из командной строки?
хороший итог тоже будет отличным
Похоже, здесь нужно решить пару вопросов.
Первый. Я не уверен, что ваш исходный код настроен правильно. Если ваш класс действительно com.or.jnihelloworld.nativeclass, он должен находиться в каталоге: C: \ Users \ Или Azran \ workspace \ JniHelloWorld \ src \ com \ or \ jnihelloworld \ nativeclass.java
Однако, предполагая, что каталог class / правильный. Команда javah использует -d для указания выходного каталога, и вы можете указать путь с -classpath так
javah -classpath "C:\Users\Or Azran\workspace\JniHelloWorld\src\" \
-d "C:\Users\Or Azran\workspace\JniHelloWorld\jni" com.or.jnihelloworld.nativeclass
должен положить файл туда, где вы хотите.
Ваш PATH не включает каталог bin JDK.