JDK安装后缺失javah命令

16

我能找到java, javac, 和 javadoc,但是在我的jdk\\bin文件夹中没有javah.exe

我尝试重新安装JDK,但仍然缺失。我该如何获取它?为什么会缺失呢?

我发现了一个类似的问题,虽然那个问题是针对Linux操作系统的,但是我无法为Windows用户找到答案。

我的操作系统是Windows 10,Java版本是10.0.1


1
根据JEP 313,自Java 10起,javah已从JDK中删除。自JDK 9以来,用户已被警告即将删除,在调用javah工具时会生成警告。 - M. le Rutte
2个回答

19
工具javah.exe已于Java 10中被移除。原因很简单,它已经过时了。来自JEP 313:删除本地头文件生成工具(javah)
  

动机

  

该工具已被javac中的卓越功能所取代,在JDK 8中加入(JDK-7150368)。此功能提供编写本地头文件的能力,同时编译Java源代码,从而消除了使用单独工具的需要

  

专注于javac提供的支持,消除了升级javah以支持最近新兴范例的需要,例如通过javax.tools.*中的编译器API访问API,或在JDK 9中添加的新的java.util.spi.ToolProvider SPI。

因此,如果您使用的是Java 8或更高版本,只需使用javac.exe即可。

4
是的,就像这样: "javac /home/user/Foobar.java -h /home/user/" 在Linux系统上,.h文件将会生成在"/home/user"目录下。 - Ferrarezi

18

javah已被JDK 8中添加的-h选项所取代。

自Java 9开始,它已被弃用。

有关详细信息,请参见此处


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接