使用-h选项时,javac“无源文件”

我正在尝试使用JNI和JDK9。我有一个NativeTest.java看起来像这样的类:

public class NativeTest {

static {

System.loadLibrary("hello");

}

private native void sayHello();

public static void main(String[] args) {

new NativeTest().sayHello();

}

}

我编译该类,然后使用javah NativeTest生成头文件。

发出时javah,我得到以下警告:

Warning: The javah tool is planned to be removed in the next major

JDK release. The tool has been superseded by the '-h' option added

to javac in JDK 8. Users are recommended to migrate to using the

javac '-h' option; see the javac man page for more information.

我知道下一个主要的JDK版本还需要很长时间,但是我认为我现在将开始习惯这个新选项。

所以,在尝试javac -h

NativeTest.java(以及其它类似的变化NativeTestNativeTest.class等等),我不断收到此错误:

javac: no source files

我一直无法在线找到任何帮助,可能是因为此功能是相对较新的,并且-h在手册页中找不到关于此新选项的任何信息。

还有其他人尝试吗?我想念什么?

回答:

我发现的解决方案是我没有指定javac应放置头文件的目录。

执行javac -h . NativeTest.java工作。

以上是 使用-h选项时,javac“无源文件” 的全部内容, 来源链接: utcz.com/qa/412071.html

回到顶部