问题描述
由于我使用的是JDK 1.8,因此我尝试使用命令javah -jni MyClass.java
生成头文件(MyClass.h),但是我也尝试使用其他版本的命令javac -h MyClass.java
,但是我总是在我的终端中得到以下结果:
感谢您的帮助
[edit]我也尝试使用.class文件,但是输出与javac -h
相同,但与javah -jni
相同,我得到以下输出:
解决方法
尝试先编译SimpleJNI.java,然后执行javah命令。
样品分类
public class SimpleJNI
{
public static void someMethod()
{
System.out.println("Some method");
}
}
如果需要任何外部依赖项,则编译将Javac与-classpath一起使用。
javac -classpath <path_to_dependency> SimpleJNI.java
,如果没有依赖性,则不使用-classpath
javac SimpleJNI.java
然后使用.class文件执行javah
javah SimpleJNI