jdk/src/solaris/doc/sun/man/man1/ja/javah.1
changeset 2692 345bc8d65b19
parent 2 90ce3da70b43
child 5506 202f599c92aa
equal deleted inserted replaced
2691:bad7bbf42755 2692:345bc8d65b19
     1 '\" t
     1 ." Copyright 2002-2006 Sun Microsystems, Inc.  All Rights Reserved.
     2 .\" Copyright 2006 Sun Microsystems, Inc.  All Rights Reserved.
     2 ." DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     3 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     3 ."
     4 .\"
     4 ." This code is free software; you can redistribute it and/or modify it
     5 .\" This code is free software; you can redistribute it and/or modify it
     5 ." under the terms of the GNU General Public License version 2 only, as
     6 .\" under the terms of the GNU General Public License version 2 only, as
     6 ." published by the Free Software Foundation.
     7 .\" published by the Free Software Foundation.
     7 ."
     8 .\"
     8 ." This code is distributed in the hope that it will be useful, but WITHOUT
     9 .\" This code is distributed in the hope that it will be useful, but WITHOUT
     9 ." ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    10 .\" ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    10 ." FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
    11 .\" FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
    11 ." version 2 for more details (a copy is included in the LICENSE file that
    12 .\" version 2 for more details (a copy is included in the LICENSE file that
    12 ." accompanied this code).
    13 .\" accompanied this code).
    13 ."
    14 .\"
    14 ." You should have received a copy of the GNU General Public License version
    15 .\" You should have received a copy of the GNU General Public License version
    15 ." 2 along with this work; if not, write to the Free Software Foundation,
    16 .\" 2 along with this work; if not, write to the Free Software Foundation,
    16 ." Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
    17 .\" Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
    17 ."
    18 .\"
    18 ." Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
    19 .\" Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
    19 ." CA 95054 USA or visit www.sun.com if you need additional information or
    20 .\" CA 95054 USA or visit www.sun.com if you need additional information or
    20 ." have any questions.
    21 .\" have any questions.
    21 ."
    22 .\" ` 
    22 .TH javah 1 "04 May 2009"
    23 '\"macro stdmacro
    23 ." Generated from HTML by html2man (author: Eric Armstrong)
    24 .TH javah 1 "2006 年 9 月 4 日" "Java SE 6" "ユーザーコマンド"
    24 
    25 .SH "名前"
    25 .LP
    26 javah \- C 言語のヘッダとスタブファイルのジェネレータ
    26 .SH ""
    27 .\" 
    27 javah \- C 若鴻帥<ゃ吾с若
    28 .\"  This document was created by saving an HTML file as text
    28 .LP
    29 .\"  from the JavaSoft web site:
    29 .RS 3
    30 .\" 
    30 
    31 .\" http://java.sun.com/products/jdk/1.2/docs/tooldocs/tools.html
    31 .LP
    32 .\" 
    32 .LP
    33 .\"  and adding appropriate troff macros.  Because the JavaSoft web site 
    33 \f3javah\fP Java 鴻 C 若<ゃ C 純若鴻<ゃ篏障<ゃJava 違潟域茯ф吾潟若C 篁荐茯ф吾潟若・膓潟若娯篏障
    34 .\"  man pages can change without notice, it may be helpful to diff
    34 .LP
    35 .\"  files to identify changes other than new functionality. 
    35 .RE
    36 .\" 
    36 .SH "綵√"
       
    37 .LP
       
    38 
       
    39 .LP
       
    40 .nf
       
    41 \f3
       
    42 .fl
       
    43 javah [ \fP\f3options\fP\f3 ] fully\-qualified\-classname. . .
       
    44 .fl
       
    45 javah_g [ \fP\f3options\fP\f3 ] fully\-qualified\-classname. . .
       
    46 .fl
       
    47 \fP
       
    48 .fi
       
    49 
       
    50 .LP
       
    51 .SH "茯"
    37 .LP
    52 .LP
    38 
    53 
    39 .LP
    54 .LP
    40 .LP
    55 .LP
    41 \f3javah\fP は、Java クラスから C ヘッダファイルと C ソースファイルを作成します。これらのファイルは、Java プログラミング言語で書かれたコードと、C などのその他の言語で書かれたコードを接続し、コードが相互に作用するようにします。
    56 \f3javah\fP ゃc<純絎茖綽荀 C 若純若鴻<ゃ障篏若純若鴻<ゃゃc純若鴻潟若吾сゃ潟鴻帥潟劫違с C 違c篏睡障.h <ゃ絲上鴻筝眼臀ゆ篏絎臂帥障罕篏c若鴻ゃ潟鴻帥潟劫違絲上障
    42 .LP
    57 .LP
    43 .SH "形式"
       
    44 .B javah 
       
    45 [
       
    46 .B options
       
    47 ]
       
    48 .I fully-qualified-classname . . .
       
    49 .br
       
    50 .B javah_g 
       
    51 [
       
    52 .B options
       
    53 ]
       
    54 .I fully-qualified-classname . . .
       
    55 .SH "機能説明"
       
    56 .IX "stub file generator" "" "stub file generator \(em \fLjavah\fP"
       
    57 .IX "C header and stub file generator" "" "C header and stub file generator \(em \fLjavah\fP"
       
    58 .IX "javah" "" "\fLjavah\fP \(em C header and stub file generator"
       
    59 .B javah
       
    60 コマンドは、ネイティブメソッドを実装するのに必要な
       
    61 C
       
    62 言語のヘッダおよびソースファイルを生成します。
       
    63 C
       
    64 のプログラムは、
       
    65 生成されたヘッダとソースファイルを使って、
       
    66 ネイティブソースコードからオブジェクトのインスタンス
       
    67 変数を参照できます。
       
    68 .B .h
       
    69 ファイルは、対応するクラスに合ったレイアウトの
       
    70 構造体定義を含んでいます。
       
    71 構造体に含まれるフィールドは、クラス内のインスタンス変数に
       
    72 対応しています。
       
    73 .LP
    58 .LP
    74 ヘッダファイル名およびヘッダファイル中で定義される構造体名は、
    59 若<ゃ筝уh罕篏鴻羇丞障\f3javah\fP 羝<鴻宴若吾筝翫宴若後若<ゃ罕篏筝≧鴻篁障筝膩 (_) 阪絖篏睡障
    75 クラス名から派生します。
       
    76 .B javah
       
    77 に渡されるクラスがパッケージ内部にあれば、
       
    78 そのパッケージ名がファイル名および構造体名の先頭に付加されます。
       
    79 名前の間は下線
       
    80 (_)
       
    81 で区切られます。
       
    82 .LP
    60 .LP
    83 デフォルトでは、
       
    84 .B javah
       
    85 はコマンド行で指定された個々のクラスに対して
       
    86 ヘッダファイルを作成し、現在のディレクトリに出力します。
       
    87 .B \-stubs
       
    88 オプションを指定するとソースファイルが生成されます。
       
    89 .B \-o
       
    90 オプションを指定すると、指定した全クラスに対する出力ファイル
       
    91 を連結して
       
    92 1
       
    93 個のファイルとして生成します。
       
    94 .LP
    61 .LP
    95 新しいネイティブメソッドインタフェースの
    62 с \f3javah\fP 潟潟茵鴻鴻若<ゃ篏憜c<ゃ臀障純若鴻<ゃ篏\f2\-stubs\fP 激с潟篏睡1 ゃ<ゃ筝鴻鴻鴻腟g\f2\-o\fP 激с潟篏睡
    96 Java Native Interface (JNI)
       
    97 は、ヘッダ情報やスタブファイルを必要としません。
       
    98 ただし
       
    99 .B javah
       
   100 コマンドは現在も JNI 形式のネイティブメソッドに必要な
       
   101 ネイティブメソッド関数プロトタイプを生成できます。
       
   102 .B javah 
       
   103 はデフォルトで JNI 形式で出力し、その結果を 
       
   104 .B .h
       
   105 ファイルに格納します。
       
   106 .LP
    63 .LP
   107 .B javah_g
       
   108 は非最適化バージョンの
       
   109 .B javah
       
   110 で、
       
   111 .B jdb
       
   112 などのデバッガ用の使用に適しています。
       
   113 .SH "オプション"
       
   114 .TP 15
       
   115 .BI \-o " outputfile"
       
   116 コマンド行で指定したすべてのクラスに対する結果のヘッダファイルまたは
       
   117 ソースファイルを連結し、
       
   118 .BR outputfile 
       
   119 に格納します。
       
   120 .B \-o
       
   121 オプションまたは 
       
   122 .B \-d
       
   123 オプションだけを使用できます。
       
   124 .TP 15
       
   125 .BI \-d " directory"
       
   126 .B javah
       
   127 がヘッダファイルまたはスタブファイルを書き出す
       
   128 ディレクトリを指定します。
       
   129 .TP 15
       
   130 .B \-stubs
       
   131 Java オブジェクトファイルから C 言語の宣言を生成します。
       
   132 .TP 15
       
   133 .B \-verbose
       
   134 詳細情報の出力を要求します。
       
   135 .B javah
       
   136 は、生成されたファイルの状態に関するメッセージを
       
   137 .B stdout
       
   138 に書き出します。
       
   139 .TP 15
       
   140 .B  \-help
       
   141 .B javah
       
   142 の使用法についてヘルプメッセージを出力します。
       
   143 .TP 15
       
   144 .B \-version
       
   145 javah バージョン情報を出力します。
       
   146 .TP 15
       
   147 .B  \-jni
       
   148 JNI 形式のネイティブなメソッド関数のプロトタイプが入った出力ファイルを
       
   149 作成します。これはデフォルトの出力であるため、
       
   150 -B \-jni
       
   151 は省略可能です。
       
   152 .TP 15
       
   153 .BI \-classpath " path"
       
   154 .B javah
       
   155 がクラスを検索するために用いるパスを
       
   156 .I path
       
   157 で指定します。この指定値は、デフォルトおよび
       
   158 .B CLASSPATH
       
   159 環境変数の設定値をオーバーライドします。
       
   160 複数のディレクトリを指定する場合はコロンで区切ります。
       
   161 したがって
       
   162 .I path
       
   163 の通常の形式は次のようになります。
       
   164 .RS 20
       
   165 .sp 1n
       
   166 .LP
    64 .LP
   167 .BI .:< your_path >
    65 違ゃc<純ゃ潟帥с若鴻с Java Native Interface (JNI) 惹宴障鴻帥<ゃ綽荀障 憜с\f3javah\fP JNI 綵√ゃc<純綽荀ゃc<純罘純帥ゃ障 с\f3javah\fP  JNI 綵√у阪腟 .h <ゃ主障
   168 .sp 1n
       
   169 .RE
       
   170 .RS 15
       
   171 .LP
    66 .LP
   172 パスの指定例:
       
   173 .RE
       
   174 .RS 20
       
   175 .sp 1n
       
   176 .LP
    67 .LP
   177 .B .:/home/avh/classes:/usr/local/java/classes
    68 \f3javah_g\fP jdb(1) \f3javah\fP 若吾с潟с
   178 .sp 1n
       
   179 .RE
       
   180 .LP
    69 .LP
   181 便宜上、\f2*\fP のベース名を含むクラスパス要素は、ディレクトリ内の拡張子 \f2.jar\fP または \f2.JAR\fP を持つすべてのファイルのリストを指定するのと同じとみなされます (Java プログラムはこの 2 つの呼び出しを区別できない)。
    70 .SH "激с"
       
    71 .LP
       
    72 
       
    73 .LP
       
    74 .RS 3
       
    75 .TP 3
       
    76 \-o outputfile 
       
    77 潟潟茵鴻鴻鴻絲障腟若障純若鴻<ゃg \f2outputfile\fP 主障\f3\-o\fP 障 \f3\-d\fP <筝鴻篏帥障 
       
    78 .TP 3
       
    79 \-d directory 
       
    80 \f3javah\fP 若<ゃ障鴻帥<ゃ篆絖c荐絎障\f3\-d\fP 障 \f3\-o\fP <筝鴻篏帥障 
       
    81 .TP 3
       
    82 \-stubs 
       
    83 \f3javah\fP Java 吾с<ゃ C 絎h障 
       
    84 .TP 3
       
    85 \-verbose 
       
    86 荅括完阪絎篏<ゃ倶≪<祉若吾\f3javah\fP 罔羣阪阪障 
       
    87 .TP 3
       
    88 \-help 
       
    89 \f3javah\fP 篏睡羈ゃ<祉若吾阪障 
       
    90 .TP 3
       
    91 \-version 
       
    92 \f3javah\fP 若吾с恰宴阪障 
       
    93 .TP 3
       
    94 \-jni 
       
    95 JNI 綵√ゃc<ゃ罘純帥ゃ阪<ゃ\f3javah\fP 篏障罔羣阪с\f3\-jni\fP 篏睡激с潟с 
       
    96 .TP 3
       
    97 \-classpath path 
       
    98 鴻「 \f3javah\fP 篏睡鴻絎障障 CLASSPATH 医紊域┃絎筝吾障c潟潟у蚊障c\f2path\fP 筝綵√罨<障 
       
    99 .nf
       
   100 \f3
       
   101 .fl
       
   102    .:<your_path>
       
   103 .fl
       
   104 \fP
       
   105 .fi
       
   106 箴腓冴障 
       
   107 .nf
       
   108 \f3
       
   109 .fl
       
   110    .:/home/avh/classes:/usr/local/java/classes
       
   111 .fl
       
   112 \fP
       
   113 .fi
       
   114 .LP
       
   115 箴水筝\f2*\fP 若劫鴻壕膣c≦宍絖 \f2.jar\fP 障 \f2.JAR\fP ゃ鴻<ゃ鴻絎帥障 (Java 違 2 ゃ若喝冴阪ャс)
   182 .br
   116 .br
   183 .br
   117 .br
   184 たとえば、ディレクトリ \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 プログラムは認識しません。   
   118 違c \f2foo\fP  \f2a.jar\fP  \f2b.JAR\fP 障翫鴻壕膣 \f2foo/*\fP  \f2A.jar:b.JAR\fP 絮障 JAR <ゃ絎障鴻<ゃ絎c鴻 JAR <ゃ障障\f2*\fP 鴻鴻潟潟c鴻 JAR <ゃ鴻絮障\f2CLASSPATH\fP 医紊違絎臂罕絮障鴻鴻ゃ若絮綽Java 篁潟激潟莎桁絎茵障c\f2System.getenv("CLASSPATH")\fP 若喝冴医茵Java 違絮ゃ若茯茘障   
   185 .TP 15
   119 .TP 3
   186 .BI \-bootclasspath " path"
   120 \-bootclasspath path 
   187 bootstrap クラスをロードするパスを指定します。デフォルトでは、bootstrap 
   121 若鴻鴻若鴻絎障若鴻鴻с \f2jre/lib/rt.jar\fP 割ゃ JAR <ゃ 潟 Java 2 若絎茖鴻с 
   188 クラスはコアとなる Java 2 プラットフォームを実装するクラスで、
   122 .TP 3
   189 .B jre/lib/rt.jar
   123 \-old 
   190 および他の重要な jar ファイルに含まれています。
   124 ゃ JDK1.0 綵√若<ゃ絎障 
   191 .TP 15
   125 .TP 3
   192 .B \-old
   126 \-force 
   193 古い JDK 1.0 形式のヘッダファイルを生成します。
   127 阪<ゃ絽吾吾莨若障絎障 
   194 .TP 15
   128 .TP 3
   195 .B  \-force
   129 \-Joption 
   196 常に出力ファイルに書き込むことを指定します。
   130 Java 篁潟激潟 \f2option\fP 羝<障 \f2option\fP java(1)<潟鴻若吾荐莠激с潟 1 ゆ絎障違\f3\-J\-Xms48m\fP 絎鴻帥若≪<≪若 48M ゃ荐絎障 
   197 .TP 15
   131 .RE
   198 .BI \-J "option"
   132 
   199 .I option
       
   200 を Java 仮想マシンに渡します。ここで、
       
   201 .I option
       
   202 は、Java アプリケーション起動プログラムの参照ページで
       
   203 説明されているオプションの 1 つです。たとえば、
       
   204 .I \-J-Xms48m
       
   205 は、起動時に使用するメモリを 48M バイトに設定します。
       
   206 .SH "環境変数"
       
   207 .TP 15
       
   208 .B CLASSPATH
       
   209 ユーザ定義クラスへのパスをシステムに通知するために使用します。
       
   210 複数のディレクトリを指定する場合はコロンで区切ります。
       
   211 以下に例を示します。
       
   212 .RS 10
       
   213 .sp 1n
       
   214 .LP
   133 .LP
   215 .B .:/home/avh/classes:/usr/local/java/classes
   134 .SH "医紊"
       
   135 .LP
       
   136 
       
   137 .LP
       
   138 .RS 3
       
   139 .TP 3
       
   140 CLASSPATH 
       
   141 若吟弱臂鴻吾鴻激鴻絎障c潟潟у蚊障 
       
   142 .nf
       
   143 \f3
       
   144 .fl
       
   145 .:/home/avh/classes:/usr/local/java/classes
       
   146 .fl
       
   147 \fP
       
   148 .fi
   216 .RE
   149 .RE
   217 .SH "関連項目"
   150 
       
   151 .LP
       
   152 .SH "∫i"
   218 .LP
   153 .LP
   219 
   154 
   220 .LP
   155 .LP
   221 .LP
   156 .LP
   222 javac、java、jdb、javap、javadoc
   157 javac(1)java(1)jdb(1)javap(1)javadoc(1)
   223 .LP
   158 .LP
   224 
   159 
   225 .LP
   160 .LP
   226  
   161