正是标题所说的。
我有一个声明某些native
方法的类,但也有几个内部类。该javah
实用程序坚持为内部类生成单独的标头,即使它们没有任何native
方法声明。有没有办法强制javah
停止这样做(注释,秘密命令行开关,任何东西)?
正是标题所说的。
我有一个声明某些native
方法的类,但也有几个内部类。该javah
实用程序坚持为内部类生成单独的标头,即使它们没有任何native
方法声明。有没有办法强制javah
停止这样做(注释,秘密命令行开关,任何东西)?
我不知道有什么方法可以做到这一点。(我使用 Oracle JDK。)
我理解这种烦恼,但问题仅限于不必要的文件及其不必要的重新生成(外部类更改导致重写内部类的无用头文件)。
为了解决这个问题,我只是删除了所有的空头文件。我使用 Ant,因为它可用作 Eclipse 中的通用项目构建器步骤。
<?xml version="1.0" encoding="UTF-8"?>
<project name="javah">
<mkdir dir="javah" />
<javah classpath="bin" destdir="javah">
<!-- list classes here -->
<class name="com.example.Outer" />
<class name="com.example.OuterWithNatives" />
</javah>
<delete>
<fileset dir="javah">
<not>
<contains text="JNIEXPORT" />
</not>
</fileset>
</delete>
</project>