JDK安装后缺少javah

mid*_*udu 4 java javah

我能找到java,javacjavadoc却没有javah.exe我的jdk\\bin文件夹中.

我试图重新安装JDK但它仍然缺失.我怎么能得到它,为什么它会丢失?

我发现了一个类似的问题,操作系统是Linux,但我找不到Windows用户的答案.

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

Zab*_*uza 10

该工具在Java 10中javah.exe删除.原因很简单,它已经过时了.从JEP 313:删除Native-header生成工具(javah):

动机

该工具已被JDK 8(JDK-7150368)中javac增加的高级功能所取代.此功能提供了在编译Java源代码时编写本机头文件的功能,从而无需单独的工具.

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

因此,javac.exe如果您使用的是Java 8或更高版本,则可以使用.

  • 是的。像这样:“javac /home/user/Foobar.java -h /home/user/” 在Linux上,.h文件将在“/home/user”处生成。 (4认同)

Ahm*_*wan 5

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

从Java 9开始不推荐使用。

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