jdk/src/linux/doc/man/ja/javah.1
changeset 23600 d21826f6c789
parent 9566 d7241af95355
child 30373 7b7094f0b833
equal deleted inserted replaced
23599:e1bdea08040e 23600:d21826f6c789
     1 ." Copyright (c) 1994, 2011, Oracle and/or its affiliates. All rights reserved.
     1 '\" t
     2 ." DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     2 .\" Copyright (c) 1994, 2013, Oracle and/or its affiliates. All rights reserved.
     3 ."
     3 .\" Title: javah
     4 ." This code is free software; you can redistribute it and/or modify it
     4 .\" Language: English
     5 ." under the terms of the GNU General Public License version 2 only, as
     5 .\" Date: 2013年11月21日
     6 ." published by the Free Software Foundation.
     6 .\" SectDesc: 基本ツール
     7 ."
     7 .\" Software: JDK 8
     8 ." This code is distributed in the hope that it will be useful, but WITHOUT
     8 .\" Arch: 汎用
     9 ." ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     9 .\"
    10 ." FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
    10 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
    11 ." version 2 for more details (a copy is included in the LICENSE file that
    11 .\"
    12 ." accompanied this code).
    12 .\" This code is free software; you can redistribute it and/or modify it
    13 ."
    13 .\" under the terms of the GNU General Public License version 2 only, as
    14 ." You should have received a copy of the GNU General Public License version
    14 .\" published by the Free Software Foundation.
    15 ." 2 along with this work; if not, write to the Free Software Foundation,
    15 .\"
    16 ." Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
    16 .\" This code is distributed in the hope that it will be useful, but WITHOUT
    17 ."
    17 .\" ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    18 ." Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
    18 .\" FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
    19 ." or visit www.oracle.com if you need additional information or have any
    19 .\" version 2 for more details (a copy is included in the LICENSE file that
    20 ." questions.
    20 .\" accompanied this code).
    21 ."
    21 .\"
    22 .TH javah 1 "07 May 2011"
    22 .\" You should have received a copy of the GNU General Public License version
    23 
    23 .\" 2 along with this work; if not, write to the Free Software Foundation,
    24 .LP
    24 .\" Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
    25 .SH "名前"
    25 .\"
    26 javah \- C ヘッダーとスタブファイルジェネレータ
    26 .\" Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
    27 .LP
    27 .\" or visit www.oracle.com if you need additional information or have any
    28 .LP
    28 .\" questions.
    29 \f3javah\fP は、Java クラスから C ヘッダーファイルと C ソースファイルを作成します。これらのファイルは、Java プログラミング言語で書かれたコードと、C などのその他の言語で書かれたコードを接続し、コードが相互に作用するようにします。
    29 .\"
    30 .LP
    30 .pl 99999
    31 .SH "形式"
    31 .TH "javah" "1" "2013年11月21日" "JDK 8" "基本ツール"
    32 .LP
    32 .\" -----------------------------------------------------------------
       
    33 .\" * Define some portability stuff
       
    34 .\" -----------------------------------------------------------------
       
    35 .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
       
    36 .\" http://bugs.debian.org/507673
       
    37 .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
       
    38 .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
       
    39 .ie \n(.g .ds Aq \(aq
       
    40 .el       .ds Aq '
       
    41 .\" -----------------------------------------------------------------
       
    42 .\" * set default formatting
       
    43 .\" -----------------------------------------------------------------
       
    44 .\" disable hyphenation
       
    45 .nh
       
    46 .\" disable justification (adjust text to left margin only)
       
    47 .ad l
       
    48 .\" -----------------------------------------------------------------
       
    49 .\" * MAIN CONTENT STARTS HERE *
       
    50 .\" -----------------------------------------------------------------
       
    51 .SH "NAME"
       
    52 javah \- JavaクラスからCヘッダーとソース・ファイルを生成します。
       
    53 .SH "概要"
       
    54 .sp
       
    55 .if n \{\
       
    56 .RS 4
       
    57 .\}
    33 .nf
    58 .nf
    34 \f3
    59 \fIjavah\fR [ \fIoptions\fR ] f\fIully\-qualified\-class\-name \&.\&.\&.\fR
    35 .fl
       
    36 javah [ \fP\f3options\fP\f3 ] fully\-qualified\-classname. . .
       
    37 .fl
       
    38 \fP
       
    39 .fi
    60 .fi
    40 
    61 .if n \{\
    41 .LP
    62 .RE
       
    63 .\}
       
    64 .PP
       
    65 \fIoptions\fR
       
    66 .RS 4
       
    67 コマンドライン・オプション。オプションを参照してください。
       
    68 .RE
       
    69 .PP
       
    70 \fIfully\-qualified\-class\-name\fR
       
    71 .RS 4
       
    72 Cヘッダーとソース・ファイルに変換されるクラスの完全修飾された場所。
       
    73 .RE
    42 .SH "説明"
    74 .SH "説明"
    43 .LP
    75 .PP
    44 .LP
    76 \fIjavah\fRコマンドは、ネイティブ・メソッドを実装するために必要なCヘッダーとソース・ファイルを生成します。作成されたヘッダーとソース・ファイルは、ネイティブ・ソース・コードからオブジェクトのインスタンス変数を参照するためにCプログラムによって使用されます。\fI\&.h\fRファイルは、対応するクラスと一致する配置を持つ\fIstruct\fR定義を含みます。\fIstruct\fRのフィールドは、クラスのインスタンス変数に対応します。
    45 \f3javah\fP は、ネイティブメソッドを実装するために必要な C ヘッダーとソースファイルを生成します。作成されたヘッダーとソースファイルは、ネイティブソースコードからオブジェクトのインスタンス変数を参照するために C プログラムによって使用されます。.h ファイルは、対応するクラスと一致する配置を持つ構造体定義を含みます。構造体のフィールドは、クラスのインスタンス変数に対応します。
    77 .PP
    46 .LP
    78 ヘッダー・ファイルとその中で宣言される構造体の名前はクラスの名前から派生します。\fIjavah\fRコマンドに渡されるクラスがパッケージの中にある場合、パッケージ名はヘッダー・ファイル名と構造体名の両方の先頭に付加されます。下線(_)が名前の区切り文字として使用されます。
    47 .LP
    79 .PP
    48 ヘッダーファイルとその中で宣言される構造体の名前はクラスの名前から派生します。\f3javah\fP に渡されるクラスがパッケージの中にある場合、パッケージ名はヘッダーファイル名と構造体名の両方に付加されます。下線 (_) が名前の区切り文字として使用されます。
    80 デフォルトでは\fIjavah\fRコマンドは、コマンドラインにリストされる各クラスのヘッダー・ファイルを作成し、現在のディレクトリにファイルを置きます。ソース・ファイルを作成するには、\fI\-stubs\fRオプションを使用してください。1つのファイルの中に、リストされたすべてのクラスの結果を連結するには、\fI\-o\fRオプションを使用してください。
    49 .LP
    81 .PP
    50 .LP
    82 Java Native Interface (JNI)はヘッダー情報またはスタブ・ファイルを必要としません。\fIjavah\fRコマンドは引き続きJNI形式のネイティブ・メソッドに必要なネイティブ・メソッド関数プロトタイプの生成に使用できます。\fIjavah\fRコマンドはデフォルトでJNI形式の出力を生成し、その結果を\fI\&.h\fRファイルに格納します。
    51 デフォルトでは \f3javah\fP は、コマンド行にリストされる各クラスのヘッダーファイルを作成し、現在のディレクトリにファイルを置きます。ソースファイルを作成するには、\f2\-stubs\fP オプションを使用してください。1 つのファイルの中に、リストされたすべてのクラスの結果を連結するには、\f2\-o\fP オプションを使用してください。
       
    52 .LP
       
    53 .LP
       
    54 新しいネイティブメソッドインタフェースである Java Native Interface (JNI) は、ヘッダー情報またはスタブファイルを必要としません。現在では、\f3javah\fP は、JNI 形式のネイティブメソッドに必要なネイティブメソッド機能プロトタイプを生成します。デフォルトでは、\f3javah\fP は JNI 形式で出力され、その結果は .h ファイルに格納されます。
       
    55 .LP
       
    56 .SH "オプション"
    83 .SH "オプション"
    57 .LP
    84 .PP
    58 .RS 3
    85 \-o \fIoutputfile\fR
    59 .TP 3
    86 .RS 4
    60 \-o outputfile 
    87 コマンドラインにリストされたすべてのクラスに対して、結果のヘッダーまたはソース・ファイルを連結して出力ファイルに格納します。\fI\-o\fRまたは\fI\-d\fRのどちらかのみ使用できます。
    61 コマンド行にリストされたすべてのクラスに対して、結果のヘッダーまたはソースファイルを連結して \f2outputfile\fP に格納します。\f3\-o\fP または \f3\-d\fP のどちらか一方だけが使われます。 
    88 .RE
    62 .TP 3
    89 .PP
    63 \-d directory 
    90 \-d \fIdirectory\fR
    64 \f3javah\fP がヘッダーファイルまたはスタブファイルを保存する、ディレクトリを設定します。\f3\-d\fP または \f3\-o\fP のどちらか一方だけが使われます。 
    91 .RS 4
    65 .TP 3
    92 \fIjavah\fRがヘッダー・ファイルまたはスタブ・ファイルを保存する、ディレクトリを設定します。\fI\-d\fRまたは\fI\-o\fRのどちらかのみ使用できます。
    66 \-stubs 
    93 .RE
    67 \f3javah\fP が、Java オブジェクトファイルから C 宣言を生成します。 
    94 .PP
    68 .TP 3
    95 \-stubs
    69 \-verbose 
    96 .RS 4
    70 詳細出力を指定し、作成ファイルの状態に関するメッセージを、\f3javah\fP が標準出力に出力します。 
    97 \fIjavah\fRコマンドが、Javaオブジェクト・ファイルからC宣言を生成します。
    71 .TP 3
    98 .RE
    72 \-help 
    99 .PP
    73 \f3javah\fP の使用法についてのヘルプメッセージを出力します。 
   100 \-verbose
    74 .TP 3
   101 .RS 4
    75 \-version 
   102 詳細出力を指定し、作成ファイルの状態に関するメッセージを、\fIjavah\fRコマンドが\fI標準出力\fRに出力します。
    76 \f3javah\fP のバージョン情報を出力します。 
   103 .RE
    77 .TP 3
   104 .PP
    78 \-jni 
   105 \-help
    79 JNI 形式のネイティブファイル機能プロトタイプを含む出力ファイルを、\f3javah\fP が作成します。これは標準出力であるため、\f3\-jni\fP の使用はオプションです。 
   106 .RS 4
    80 .TP 3
   107 \fIjavah\fRの使用方法についてのヘルプ・メッセージを出力します。
    81 \-classpath path 
   108 .RE
    82 クラスを探すために \f3javah\fP が使用するパスを指定します。デフォルトまたは CLASSPATH 環境変数設定を上書きします。ディレクトリはコロンで分割します。したがって、\f2path\fP の一般形式は次のようになります。 
   109 .PP
    83 .nf
   110 \-version
    84 \f3
   111 .RS 4
    85 .fl
   112 \fIjavah\fRコマンドのリリース情報を出力します。
    86    .:<your_path>
   113 .RE
    87 .fl
   114 .PP
    88 \fP
   115 \-jni
    89 .fi
   116 .RS 4
    90 次に例を示します。 
   117 JNI形式のネイティブ・メソッド機能プロトタイプを含む出力ファイルを、\fIjavah\fRコマンドが作成します。これは標準出力であるため、\fI\-jni\fRの使用はオプションです。
    91 .nf
   118 .RE
    92 \f3
   119 .PP
    93 .fl
   120 \-classpath \fIpath\fR
    94    .:/home/avh/classes:/usr/local/java/classes
   121 .RS 4
    95 .fl
   122 クラスを探すために\fIjavah\fRコマンドが使用するパスを指定します。デフォルトまたは\fICLASSPATH\fR環境変数の設定をオーバーライドします。ディレクトリはOracle Solarisの場合はコロンで、Windowsの場合はセミコロンで区切られます。パスの一般的な形式は次のようになります。
    96 \fP
   123 .sp
    97 .fi
   124 \fBOracle Solaris\fRの場合:
    98 .LP
   125 .sp
    99 便宜上、 \f2*\fP のベース名を含むクラスパス要素は、ディレクトリ内の拡張子 \f2.jar\fP または \f2.JAR\fP を持つすべてのファイルのリストを指定するのと同じとみなされます (Java プログラムはこの 2 つの呼び出しを区別できない)。
   126 \&.:\fIyour\-path\fR
       
   127 .sp
       
   128 例:
       
   129 \fI\&.:/home/avh/classes:/usr/local/java/classes\fR
       
   130 .sp
       
   131 \fBWindows\fRの場合:
       
   132 .sp
       
   133 \&.;\fIyour\-path\fR
       
   134 .sp
       
   135 例:
       
   136 \fI\&.;C:\eusers\edac\eclasses;C:\etools\ejava\eclasses\fR
       
   137 .sp
       
   138 便宜上、*のベース名を含むクラス・パス要素は、\fI\&.jar\fRまたは\fI\&.JAR\fRを拡張子に持つディレクトリ内のすべてのファイルのリストを指定するのと同等とみなされます。
       
   139 .sp
       
   140 たとえば、ディレクトリ\fImydir\fRに\fIa\&.jar\fRと\fIb\&.JAR\fRが含まれている場合、クラス・パス要素\fImydir/*\fRは\fIA\fR\fI\&.jar:b\&.JAR\fRに展開されますが、JARファイルの順番は未指定となります。このリストには、隠しファイルも含め、指定されたディレクトリ内のすべてのJARファイルが含まれます。*からなるクラス・パス・エントリは、現在のディレクトリ内のすべてのJARファイルのリストに展開されます。\fICLASSPATH\fR環境変数も、定義時には同様に展開されます。クラス・パスのワイルドカードの展開は、Java仮想マシン(JVM)の開始前に行われます。Javaプログラムは、環境を問い合せる場合を除き、展開されていないワイルドカードを参照しません。たとえば、\fISystem\&.getenv("CLASSPATH")\fRをコールして問い合せる場合です。
       
   141 .RE
       
   142 .PP
       
   143 \-bootclasspath \fIpath\fR
       
   144 .RS 4
       
   145 ブートストラップ・クラスをロードするパスを指定します。ブートストラップ・クラスは、デフォルトでは\fIjre\elib\ert\&.jar\fRおよび他のいくつかのJARファイルにある、コアJavaプラットフォームを実装するクラスです。
       
   146 .RE
       
   147 .PP
       
   148 \-old
       
   149 .RS 4
       
   150 古いJDK 1\&.0形式のヘッダー・ファイルを生成するように指定します。
       
   151 .RE
       
   152 .PP
       
   153 \-force
       
   154 .RS 4
       
   155 出力ファイルが常に書き込まれるように指定します。
       
   156 .RE
       
   157 .PP
       
   158 \-J\fIoption\fR
       
   159 .RS 4
       
   160 Java仮想マシンに\fIoption\fRを渡します。\fIoption\fRには、Javaアプリケーション起動ツールのリファレンス・ページに記載されているオプションを1つ指定します。たとえば、\fI\-J\-Xms48m\fRと指定すると、スタートアップ・メモリーは48MBに設定されます。java(1)を参照してください。
       
   161 .RE
       
   162 .SH "関連項目"
       
   163 .sp
       
   164 .RS 4
       
   165 .ie n \{\
       
   166 \h'-04'\(bu\h'+03'\c
       
   167 .\}
       
   168 .el \{\
       
   169 .sp -1
       
   170 .IP \(bu 2.3
       
   171 .\}
       
   172 javah(1)
       
   173 .RE
       
   174 .sp
       
   175 .RS 4
       
   176 .ie n \{\
       
   177 \h'-04'\(bu\h'+03'\c
       
   178 .\}
       
   179 .el \{\
       
   180 .sp -1
       
   181 .IP \(bu 2.3
       
   182 .\}
       
   183 java(1)
       
   184 .RE
       
   185 .sp
       
   186 .RS 4
       
   187 .ie n \{\
       
   188 \h'-04'\(bu\h'+03'\c
       
   189 .\}
       
   190 .el \{\
       
   191 .sp -1
       
   192 .IP \(bu 2.3
       
   193 .\}
       
   194 jdb(1)
       
   195 .RE
       
   196 .sp
       
   197 .RS 4
       
   198 .ie n \{\
       
   199 \h'-04'\(bu\h'+03'\c
       
   200 .\}
       
   201 .el \{\
       
   202 .sp -1
       
   203 .IP \(bu 2.3
       
   204 .\}
       
   205 javap(1)
       
   206 .RE
       
   207 .sp
       
   208 .RS 4
       
   209 .ie n \{\
       
   210 \h'-04'\(bu\h'+03'\c
       
   211 .\}
       
   212 .el \{\
       
   213 .sp -1
       
   214 .IP \(bu 2.3
       
   215 .\}
       
   216 javadoc(1)
       
   217 .RE
   100 .br
   218 .br
   101 .br
   219 'pl 8.5i
   102 たとえば、ディレクトリ \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 プログラムが展開されていないワイルドカードを認識することはありません。   
   220 'bp
   103 .TP 3
       
   104 \-bootclasspath path 
       
   105 ブートストラップクラスをロードするパスを指定します。ブートストラップクラスは、デフォルトでは \f2jre/lib/rt.jar\fP および他のいくつかの JAR ファイル にある、コア Java 2 プラットフォームを実装するクラスです。 
       
   106 .TP 3
       
   107 \-old 
       
   108 古い JDK1.0 形式のヘッダーファイルを生成するように指定します。 
       
   109 .TP 3
       
   110 \-force 
       
   111 出力ファイルが常に書き込まれるように指定します。 
       
   112 .TP 3
       
   113 \-Joption 
       
   114 Java 仮想マシンに \f2option\fP を渡します。\f2option\fP には、java(1)のリファレンスページに記載されているオプションを 1 つ指定します。たとえば、\f3\-J\-Xms48m\fP と指定すると、スタートアップメモリーは 48M バイトに設定されます。 
       
   115 .RE
       
   116 
       
   117 .LP
       
   118 .SH "環境変数"
       
   119 .LP
       
   120 .RS 3
       
   121 .TP 3
       
   122 CLASSPATH 
       
   123 ユーザー定義クラスへのパスをシステムに指定します。ディレクトリはコロンで分割されています。 
       
   124 .nf
       
   125 \f3
       
   126 .fl
       
   127 .:/home/avh/classes:/usr/local/java/classes
       
   128 .fl
       
   129 \fP
       
   130 .fi
       
   131 .RE
       
   132 
       
   133 .LP
       
   134 .SH "関連項目"
       
   135 .LP
       
   136 .LP
       
   137 javac(1)、java(1)、jdb(1)、javap(1)、javadoc(1)
       
   138 .LP
       
   139