📄 javah - c 头文件和 stub 文件生成器.htm
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0083)http://www.iplab.is.tsukuba.ac.jp/~liuxj/jdk1.2/zh/docs/tooldocs/solaris/javah.html -->
<HTML><HEAD><TITLE>javah - C 头文件和 Stub 文件生成器</TITLE>
<META http-equiv=Content-Type content="text/html; CHARSET=gb2312">
<META content="MSHTML 6.00.2800.1106" name=GENERATOR></HEAD>
<BODY bgColor=#ffffff>
<H1>javah - C 头文件和 Stub 文件生成器</H1>
<BLOCKQUOTE><B>
<P>javah</B> 从 Java 类生成 C 头文件和 C 源文件。这些文件提供了连接胶合,使 Java 和 C 代码可进行交互。
</P></BLOCKQUOTE>
<H2>结构</H2>
<BLOCKQUOTE><PRE>javah [ <A href="http://www.iplab.is.tsukuba.ac.jp/~liuxj/jdk1.2/zh/docs/tooldocs/solaris/javah.html#Options">options</A> ] fully-qualified-classname. . .
javah_g [ <A href="http://www.iplab.is.tsukuba.ac.jp/~liuxj/jdk1.2/zh/docs/tooldocs/solaris/javah.html#Options">options</A> ] fully-qualified-classname. . .
</PRE></BLOCKQUOTE>
<H2>说明</H2>
<BLOCKQUOTE><B>
<P>javah</B> 生成实现本地方法所需的 C 头文件和源文件。C 程序用生成的头文件和源文件在本地源代码中引用某一对象的实例变量。.h 文件含有一个
struct 定义,该定义的布局与相应类的布局平行。该 struct 中的域对应于类中的实例变量。 </P>
<P>头文件名以及在头文件中所声明的结构名都来源于类名。如果传给 <B>javah</B> 的类是在某个包中,则头文件名和结构名前都要冠以该包名。下划线
(_) 用作名称分隔符。 </P>
<P>缺省情况下,<B>javah</B> 为每个在命令行中列出的类都创建一个头文件,且将该文件放在当前目录中。用 <I>-stubs</I>
选项创建源文件。用 <I>-o</I> 选项将所有列出类的结果串接成一个单一文件。 </P>
<P>新的平台相关方法接口(Java 平台相关代码接口 (JNI))不需要头文件信息或 stub 文件。<B>javah</B> 仍可用于生成 JNI
风格的本地方法所需的本地方法函数原型。<B>javah</B> 在缺省情况下生成 JNI 风格的输出并将结果放在 .h 文件中。 </P>
<P><B>javah_g</B> 是 <B>javah</B> 的非优化版本,适合于与 <A
href="http://www.iplab.is.tsukuba.ac.jp/~liuxj/jdk1.2/zh/docs/tooldocs/solaris/jdb.html"><B>jdb</B></A>
之类的调试程序一起使用。 </P></BLOCKQUOTE><A name=Options>
<H2>选项</H2></A>
<BLOCKQUOTE>
<DL>
<DT><B>-o <I>输出文件</I></B>
<DD>将命令行中列出的所有类的头文件或源文件串接到<I>输出文件</I>中。<B>-o</B> 或 <B>-d</B> 两个选项只能选择一个。
<DD>
<DT><B>-d <I>目录</I></B>
<DD>设置 <B>javah</B> 保存头文件或 stub 文件的目录。<B>-d</B> 或 <B>-o</B> 两个选项只能选择一个。
<DT>
<DT><B>-stubs</B>
<DD>使 <B>javah</B> 从 Java 对象文件生成 C 声明。
<DT>
<DT><B>-verbose</B>
<DD>指明长格式输出,并使 <B>javah</B> 将所生成文件的有关状态的信息输出到标准输出设备中。
<DT>
<DT><B>-help</B>
<DD>输出 <B>javah</B> 用法的帮助信息。
<DT>
<DT><B>-version</B>
<DD>输出 <B>javah</B> 的版本信息。
<DT><B>-jni</B>
<DD>使 <B>javah</B> 创建一输出文件,该文件包含 JNI 风格的本地方法函数原型。这是缺省输出,所以 <B>-jni</B>
的使用是可选的。
<DT>
<DT><B>-classpath <I>路径</I></B>
<DD>指定 <B>javah</B> 用来查询类的路径。如果设置了该选项,它将覆盖缺省值或 CLASSPATH
环境变量。目录用冒号分隔。因此,<I>路径</I>的一般格式是:<PRE> .:<您的路径>
</PRE>
<P>例如: </P><PRE> .:/home/avh/classes:/usr/local/java/classes
</PRE>
<DT><B>-bootclasspath <I>路径</I></B>
<DD>指定加载自举类所用的路径。缺省情况下,自举类是实现核心 Java 平台的类,位于 <TT>jre\lib\rt.jar</TT> 和
<TT>jre\lib\i18n.jar</TT> 中。
<DT>
<DT><B>-old</B>
<DD>指定应当生成旧 JDK1.0 风格的头文件。
<DT>
<DT><B>-force</B>
<DD>指定始终写输出文件。 </DD></DL></BLOCKQUOTE>
<H2>环境变量</H2>
<BLOCKQUOTE>
<DL>
<DT>CLASSPATH
<DD>用于为系统提供用户定义类的路径。目录用冒号分隔,例如:<PRE>.:/home/avh/classes:/usr/local/java/classes
</PRE></DD></DL></BLOCKQUOTE>
<H2>另请参阅</H2>
<BLOCKQUOTE><A
href="http://www.iplab.is.tsukuba.ac.jp/~liuxj/jdk1.2/zh/docs/tooldocs/solaris/javac.html">
<P>javac</A>, <A
href="http://www.iplab.is.tsukuba.ac.jp/~liuxj/jdk1.2/zh/docs/tooldocs/solaris/java.html">java</A>,
<A
href="http://www.iplab.is.tsukuba.ac.jp/~liuxj/jdk1.2/zh/docs/tooldocs/solaris/jdb.html">jdb</A>,
<A
href="http://www.iplab.is.tsukuba.ac.jp/~liuxj/jdk1.2/zh/docs/tooldocs/solaris/javap.html">javap</A>,
<A
href="http://www.iplab.is.tsukuba.ac.jp/~liuxj/jdk1.2/zh/docs/tooldocs/solaris/javadoc.html">javadoc</A>
</P></BLOCKQUOTE></BODY></HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -