javah.1 revision 1178
1178N/A." Copyright 2002-2006 Sun Microsystems, Inc. All Rights Reserved.
1178N/A." DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
1178N/A."
1178N/A." This code is free software; you can redistribute it and/or modify it
1178N/A." under the terms of the GNU General Public License version 2 only, as
1178N/A." published by the Free Software Foundation.
1178N/A."
1178N/A." This code is distributed in the hope that it will be useful, but WITHOUT
1178N/A." ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
1178N/A." FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
1178N/A." version 2 for more details (a copy is included in the LICENSE file that
1178N/A." accompanied this code).
1178N/A."
1178N/A." You should have received a copy of the GNU General Public License version
1178N/A." 2 along with this work; if not, write to the Free Software Foundation,
1178N/A." Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
1178N/A."
1178N/A." Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
1178N/A." CA 95054 USA or visit www.sun.com if you need additional information or
1178N/A." have any questions.
1178N/A."
1178N/A.TH javah 1 "04 May 2009"
1178N/A." Generated from HTML by html2man (author: Eric Armstrong)
1178N/A
1178N/A.LP
1178N/A.SH "名前"
1178N/Ajavah \- C ヘッダーとスタブファイルジェネレータ
1178N/A.LP
1178N/A.RS 3
1178N/A
1178N/A.LP
1178N/A.LP
1178N/A\f3javah\fP は、Java クラスから C ヘッダーファイルと C ソースファイルを作成します。これらのファイルは、Java プログラミング言語で書かれたコードと、C などのその他の言語で書かれたコードを接続し、コードが相互に作用するようにします。
1178N/A.LP
1178N/A.RE
1178N/A.SH "形式"
1178N/A.LP
1178N/A
1178N/A.LP
1178N/A.nf
1178N/A\f3
1178N/A.fl
1178N/Ajavah [ \fP\f3options\fP\f3 ] fully\-qualified\-classname. . .
1178N/A.fl
1178N/Ajavah_g [ \fP\f3options\fP\f3 ] fully\-qualified\-classname. . .
1178N/A.fl
1178N/A\fP
1178N/A.fi
1178N/A
1178N/A.LP
1178N/A.SH "説明"
0N/A.LP
0N/A
0N/A.LP
0N/A.LP
1178N/A\f3javah\fP は、ネイティブメソッドを実装するために必要な C ヘッダーとソースファイルを生成します。作成されたヘッダーとソースファイルは、ネイティブソースコードからオブジェクトのインスタンス変数を参照するために C プログラムによって使用されます。.h ファイルは、対応するクラスと一致する配置を持つ構造体定義を含みます。構造体のフィールドは、クラスのインスタンス変数に対応します。
1178N/A.LP
0N/A.LP
1178N/Aヘッダーファイルとその中で宣言される構造体の名前はクラスの名前から派生します。\f3javah\fP に渡されるクラスがパッケージの中にある場合、パッケージ名はヘッダーファイル名と構造体名の両方に付加されます。下線 (_) が名前の区切り文字として使用されます。
1178N/A.LP
1178N/A.LP
1178N/Aデフォルトでは \f3javah\fP は、コマンド行にリストされる各クラスのヘッダーファイルを作成し、現在のディレクトリにファイルを置きます。ソースファイルを作成するには、\f2\-stubs\fP オプションを使用してください。1 つのファイルの中に、リストされたすべてのクラスの結果を連結するには、\f2\-o\fP オプションを使用してください。
1178N/A.LP
0N/A.LP
1178N/A新しいネイティブメソッドインタフェースである Java Native Interface (JNI) は、ヘッダー情報またはスタブファイルを必要としません。 現在では、\f3javah\fP は、JNI 形式のネイティブメソッドに必要なネイティブメソッド機能プロトタイプを生成します。 デフォルトでは、\f3javah\fP は JNI 形式で出力され、その結果は .h ファイルに格納されます。
1178N/A.LP
0N/A.LP
1178N/A\f3javah_g\fP は、jdb(1) のようなデバッガに適した、\f3javah\fP の最適化されていないバージョンです。
0N/A.LP
1178N/A.SH "オプション"
1178N/A.LP
1178N/A
0N/A.LP
1178N/A.RS 3
1178N/A.TP 3
1178N/A\-o outputfile
1178N/Aコマンド行にリストされたすべてのクラスに対して、結果のヘッダーまたはソースファイルを連結して \f2outputfile\fP に格納します。\f3\-o\fP または \f3\-d\fP のどちらか一方だけが使われます。
1178N/A.TP 3
1178N/A\-d directory
1178N/A\f3javah\fP がヘッダーファイルまたはスタブファイルを保存する、ディレクトリを設定します。\f3\-d\fP または \f3\-o\fP のどちらか一方だけが使われます。
1178N/A.TP 3
1178N/A\-stubs
1178N/A\f3javah\fP が、Java オブジェクトファイルから C 宣言を生成します。
1178N/A.TP 3
1178N/A\-verbose
1178N/A詳細出力を指定し、作成ファイルの状態に関するメッセージを、\f3javah\fP が標準出力に出力します。
1178N/A.TP 3
1178N/A\-help
1178N/A\f3javah\fP の使用法についてのヘルプメッセージを出力します。
1178N/A.TP 3
1178N/A\-version
1178N/A\f3javah\fP のバージョン情報を出力します。
1178N/A.TP 3
1178N/A\-jni
1178N/AJNI 形式のネイティブファイル機能プロトタイプを含む出力ファイルを、\f3javah\fP が作成します。これは標準出力であるため、\f3\-jni\fP の使用はオプションです。
1178N/A.TP 3
1178N/A\-classpath path
1178N/Aクラスを探すために \f3javah\fP が使用するパスを指定します。デフォルトまたは CLASSPATH 環境変数設定を上書きします。ディレクトリはコロンで分割します。したがって、\f2path\fP の一般形式は次のようになります。
1178N/A.nf
1178N/A\f3
1178N/A.fl
1178N/A .:<your_path>
1178N/A.fl
1178N/A\fP
1178N/A.fi
1178N/A例を示します。
1178N/A.nf
1178N/A\f3
1178N/A.fl
1178N/A .:/home/avh/classes:/usr/local/java/classes
1178N/A.fl
1178N/A\fP
1178N/A.fi
0N/A.LP
1178N/A便宜上、\f2*\fP のベース名を含むクラスパス要素は、ディレクトリ内の拡張子 \f2.jar\fP または \f2.JAR\fP を持つすべてのファイルのリストを指定するのと同じとみなされます (Java プログラムはこの 2 つの呼び出しを区別できない)。
0N/A.br
0N/A.br
1178N/Aたとえば、ディレクトリ \f2foo\fP に \f2a.jar\fP と \f2b.JAR\fP が含まれている場合、クラスパス要素 \f2foo/*\fP は \f2A.jar:b.JAR\fP に展開されます。 ただし、JAR ファイルの順番は指定されません。このリストには、隠しファイルも含め、指定されたディレクトリ内のすべての JAR ファイルが含まれます。\f2*\fP だけから成るクラスパスエントリは、カレントディレクトリ内のすべての JAR ファイルのリストに展開されます。\f2CLASSPATH\fP 環境変数も、定義時には同様に展開されます。クラスパスのワイルドカード展開は必ず、Java 仮想マシンの起動前に実行されます。したがって、\f2System.getenv("CLASSPATH")\fP 呼び出しのように環境に問い合わせを行わない限り、Java プログラムが展開されていないワイルドカードを認識することはありません。
1178N/A.TP 3
1178N/A\-bootclasspath path
1178N/Aブートストラップクラスをロードするパスを指定します。ブートストラップクラスは、デフォルトでは \f2jre/lib/rt.jar\fP および他のいくつかの JAR ファイル にある、コア Java 2 プラットフォームを実装するクラスです。
1178N/A.TP 3
1178N/A\-old
1178N/A古い JDK1.0 形式のヘッダーファイルを生成するように指定します。
1178N/A.TP 3
1178N/A\-force
1178N/A出力ファイルが常に書き込まれるように指定します。
1178N/A.TP 3
1178N/A\-Joption
1178N/AJava 仮想マシンに \f2option\fP を渡します。 \f2option\fP には、java(1)のリファレンスページに記載されているオプションを 1 つ指定します。たとえば、\f3\-J\-Xms48m\fP と指定すると、スタートアップメモリーは 48M バイトに設定されます。
1178N/A.RE
1178N/A
1178N/A.LP
1178N/A.SH "環境変数"
0N/A.LP
1178N/A
1178N/A.LP
1178N/A.RS 3
1178N/A.TP 3
1178N/ACLASSPATH
1178N/Aユーザー定義クラスへのパスをシステムに指定します。ディレクトリはコロンで分割されています。
1178N/A.nf
1178N/A\f3
1178N/A.fl
1178N/A.:/home/avh/classes:/usr/local/java/classes
1178N/A.fl
1178N/A\fP
1178N/A.fi
0N/A.RE
1178N/A
1178N/A.LP
1178N/A.SH "関連項目"
0N/A.LP
0N/A
0N/A.LP
0N/A.LP
1178N/Ajavac(1)、java(1)、jdb(1)、javap(1)、javadoc(1)
0N/A.LP
0N/A
0N/A.LP
0N/A