annotate src/solaris/doc/sun/man/man1/ja/javah.1 @ 5193:28e43b980aee

7182226: NLS: jdk7u6 message drop20 integration Reviewed-by: yhuang
author mfang
date Mon, 09 Jul 2012 22:58:53 -0700
parents 94ba195ce8a1
children
rev   line source
mfang@4169 1 ." Copyright (c) 1994, 2011, Oracle and/or its affiliates. All rights reserved.
tbell@1178 2 ." DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
tbell@1178 3 ."
tbell@1178 4 ." This code is free software; you can redistribute it and/or modify it
tbell@1178 5 ." under the terms of the GNU General Public License version 2 only, as
tbell@1178 6 ." published by the Free Software Foundation.
tbell@1178 7 ."
tbell@1178 8 ." This code is distributed in the hope that it will be useful, but WITHOUT
tbell@1178 9 ." ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
tbell@1178 10 ." FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
tbell@1178 11 ." version 2 for more details (a copy is included in the LICENSE file that
tbell@1178 12 ." accompanied this code).
tbell@1178 13 ."
tbell@1178 14 ." You should have received a copy of the GNU General Public License version
tbell@1178 15 ." 2 along with this work; if not, write to the Free Software Foundation,
tbell@1178 16 ." Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
tbell@1178 17 ."
ohair@2362 18 ." Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
ohair@2362 19 ." or visit www.oracle.com if you need additional information or have any
ohair@2362 20 ." questions.
tbell@1178 21 ."
mfang@5193 22 .TH javah 1 "05 Jul 2012"
tbell@1178 23
tbell@1178 24 .LP
ogino@4033 25 .SH "名前"
mfang@4943 26 javah \- Cヘッダーとスタブ・ファイル・ジェネレータ
tbell@1178 27 .LP
tbell@1178 28 .LP
mfang@4943 29 \f3javah\fPは、JavaクラスからCヘッダー・ファイルとCソース・ファイルを作成します。これらのファイルは、Javaプログラミング言語で書かれたコードと、Cなどのその他の言語で書かれたコードを接続し、コードが相互に作用するようにします。
tbell@1178 30 .LP
ogino@4033 31 .SH "形式"
duke@0 32 .LP
tbell@1178 33 .nf
tbell@1178 34 \f3
tbell@1178 35 .fl
tbell@1178 36 javah [ \fP\f3options\fP\f3 ] fully\-qualified\-classname. . .
tbell@1178 37 .fl
tbell@1178 38 \fP
tbell@1178 39 .fi
tbell@1178 40
duke@0 41 .LP
ogino@4033 42 .SH "説明"
duke@0 43 .LP
duke@0 44 .LP
mfang@4943 45 \f3javah\fPは、ネイティブ・メソッドを実装するために必要なCヘッダーとソース・ファイルを生成します。作成されたヘッダーとソース・ファイルは、ネイティブ・ソース・コードからオブジェクトのインスタンス変数を参照するためにCプログラムによって使用されます。.hファイルは、対応するクラスと一致する配置を持つ構造体定義を含みます。構造体のフィールドは、クラスのインスタンス変数に対応します。
duke@0 46 .LP
tbell@1178 47 .LP
mfang@4943 48 ヘッダー・ファイルとその中で宣言される構造体の名前はクラスの名前から派生します。\f3javah\fPに渡されるクラスがパッケージの中にある場合、パッケージ名はヘッダー・ファイル名と構造体名の両方に付加されます。下線(_)が名前の区切り文字として使用されます。
tbell@1178 49 .LP
tbell@1178 50 .LP
mfang@4943 51 デフォルトでは\f3javah\fPは、コマンドラインにリストされる各クラスのヘッダー・ファイルを作成し、現在のディレクトリにファイルを置きます。ソース・ファイルを作成するには、\f2\-stubs\fPオプションを使用してください。1つのファイルの中に、リストされたすべてのクラスの結果を連結するには、\f2\-o\fPオプションを使用してください。
tbell@1178 52 .LP
tbell@1178 53 .LP
mfang@4943 54 新しいネイティブ・メソッド・インタフェースであるJava Native Interface(JNI)は、ヘッダー情報またはスタブ・ファイルを必要としません。現在では、\f3javah\fPは、JNI形式のネイティブ・メソッドに必要なネイティブ・メソッド機能プロトタイプを生成します。デフォルトでは、\f3javah\fPはJNI形式で出力され、その結果は .hファイルに格納されます。
tbell@1178 55 .LP
ogino@4033 56 .SH "オプション"
tbell@1178 57 .LP
tbell@1178 58 .RS 3
tbell@1178 59 .TP 3
tbell@1178 60 \-o outputfile
mfang@4943 61 コマンドラインにリストされたすべてのクラスに対して、結果のヘッダーまたはソース・ファイルを連結して\f2outputfile\fPに格納します。\f3\-o\fPまたは\f3\-d\fPのどちらか一方のみ使用されます。
tbell@1178 62 .TP 3
mfang@4943 63 \-ddirectory
mfang@4943 64 \f3javah\fPがヘッダー・ファイルまたはスタブ・ファイルを保存する、ディレクトリを設定します。\f3\-d\fPまたは\f3\-o\fPのどちらか一方のみ使用されます。
tbell@1178 65 .TP 3
tbell@1178 66 \-stubs
mfang@4943 67 \f3javah\fPが、Javaオブジェクト・ファイルからC宣言を生成します。
tbell@1178 68 .TP 3
tbell@1178 69 \-verbose
mfang@4943 70 詳細出力を指定し、作成ファイルの状態に関するメッセージを、\f3javah\fPが標準出力に出力します。
tbell@1178 71 .TP 3
tbell@1178 72 \-help
mfang@4943 73 \f3javah\fPの使用方法についてのヘルプ・メッセージを出力します。
tbell@1178 74 .TP 3
tbell@1178 75 \-version
mfang@4943 76 \f3javah\fPのバージョン情報を出力します。
tbell@1178 77 .TP 3
tbell@1178 78 \-jni
mfang@4943 79 JNI形式のネイティブ・ファイル機能プロトタイプを含む出力ファイルを、\f3javah\fPが作成します。これは標準出力であるため、\f3\-jni\fPの使用はオプションです。
tbell@1178 80 .TP 3
tbell@1178 81 \-classpath path
mfang@4943 82 クラスを探すために\f3javah\fPが使用するパスを指定します。デフォルトまたはCLASSPATH環境変数設定を上書きします。ディレクトリはコロンで分割します。したがって、\f2path\fPの一般形式は次のようになります。
tbell@1178 83 .nf
tbell@1178 84 \f3
tbell@1178 85 .fl
tbell@1178 86 .:<your_path>
tbell@1178 87 .fl
tbell@1178 88 \fP
tbell@1178 89 .fi
ogino@4033 90 次に例を示します。
tbell@1178 91 .nf
tbell@1178 92 \f3
tbell@1178 93 .fl
tbell@1178 94 .:/home/avh/classes:/usr/local/java/classes
tbell@1178 95 .fl
tbell@1178 96 \fP
tbell@1178 97 .fi
mfang@4943 98 便宜上、\f2*\fPのベース名を含むクラス・パス要素は、\f2.jar\fPまたは\f2.JAR\fPを拡張子に持つディレクトリ内のすべてのファイルのリストを指定するのと同等とみなされます(javaプログラムはこの2つの呼出しを区別できない)。
tbell@1178 99 .br
tbell@1178 100 .br
mfang@4943 101 たとえば、ディレクトリ\f2foo\fPに\f2a.jar\fPと\f2b.JAR\fPが含まれている場合、クラス・パス要素\f2foo/*\fPは\f2A.jar:b.JAR\fPに展開されます。ただし、JARファイルの順番は未指定となります。このリストには、隠しファイルも含め、指定されたディレクトリ内のすべてのJARファイルが含まれます。\f2*\fPのみからなるクラス・パス・エントリは、現在のディレクトリ内のすべてのJARファイルのリストに展開されます。\f2CLASSPATH\fP環境変数も、定義時には同様に展開されます。クラス・パスのワイルドカード展開は必ず、Java仮想マシンの起動前に実行されます。したがって、環境に問合せを行わない限り、Javaプログラムが展開されていないワイルドカードを認識することはありません。たとえば、\f2System.getenv(\\"CLASSPATH\\")\fP呼出しがその例です。
tbell@1178 102 .TP 3
tbell@1178 103 \-bootclasspath path
mfang@4943 104 ブートストラップ・クラスをロードするパスを指定します。ブートストラップ・クラスは、デフォルトでは\f2jre/lib/rt.jar\fPおよび他のいくつかのJARファイルにある、コアJava 2プラットフォームを実装するクラスです。
tbell@1178 105 .TP 3
tbell@1178 106 \-old
mfang@4943 107 古いJDK1.0形式のヘッダー・ファイルを生成するように指定します。
tbell@1178 108 .TP 3
tbell@1178 109 \-force
ogino@4033 110 出力ファイルが常に書き込まれるように指定します。
tbell@1178 111 .TP 3
tbell@1178 112 \-Joption
mfang@4943 113 Java仮想マシンに\f2option\fPを渡します。\f2option\fPには、java(1)のリファレンス・ページに記載されているオプションを1つ指定します。たとえば、\f3\-J\-Xms48m\fPと指定すると、スタートアップ・メモリーは48Mバイトに設定されます。
tbell@1178 114 .RE
tbell@1178 115
tbell@1178 116 .LP
ogino@4033 117 .SH "環境変数"
tbell@1178 118 .LP
tbell@1178 119 .RS 3
tbell@1178 120 .TP 3
tbell@1178 121 CLASSPATH
ogino@4033 122 ユーザー定義クラスへのパスをシステムに指定します。ディレクトリはコロンで分割されています。
tbell@1178 123 .nf
tbell@1178 124 \f3
tbell@1178 125 .fl
tbell@1178 126 .:/home/avh/classes:/usr/local/java/classes
tbell@1178 127 .fl
tbell@1178 128 \fP
tbell@1178 129 .fi
tbell@1178 130 .RE
tbell@1178 131
tbell@1178 132 .LP
ogino@4033 133 .SH "関連項目"
tbell@1178 134 .LP
tbell@1178 135 .LP
ogino@4033 136 javac(1)、java(1)、jdb(1)、javap(1)、javadoc(1)
duke@0 137 .LP
duke@0 138