java.1 22.7 KB
Newer Older
1
." Copyright (c) 1994, 2011, Oracle and/or its affiliates. All rights reserved.
T
tbell 已提交
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
." DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
."
." This code is free software; you can redistribute it and/or modify it
." under the terms of the GNU General Public License version 2 only, as
." published by the Free Software Foundation.
."
." This code is distributed in the hope that it will be useful, but WITHOUT
." ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
." FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
." version 2 for more details (a copy is included in the LICENSE file that
." accompanied this code).
."
." You should have received a copy of the GNU General Public License version
." 2 along with this work; if not, write to the Free Software Foundation,
." Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
."
18 19 20
." Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
." or visit www.oracle.com if you need additional information or have any
." questions.
T
tbell 已提交
21
."
22
.TH java 1 "07 May 2011"
T
tbell 已提交
23 24

.LP
25 26
.SH "名前"
java \- Java アプリケーション起動ツール
T
tbell 已提交
27 28 29 30
.LP
.RS 3
.TP 2
o
31
形式 
T
tbell 已提交
32 33
.TP 2
o
34
説明 
T
tbell 已提交
35 36
.TP 2
o
37
オプション 
T
tbell 已提交
38 39
.TP 2
o
40
関連項目 
T
tbell 已提交
41 42 43
.RE

.LP
44
.SH "形式"
T
tbell 已提交
45
.LP
D
duke 已提交
46
.nf
T
tbell 已提交
47 48 49 50 51 52
\f3
.fl
    \fP\f3java\fP [ options ] class [ argument ... ]
.fl
    \f3java\fP [ options ] \f3\-jar\fP file.jar [ argument ... ]
.fl
D
duke 已提交
53
.fi
T
tbell 已提交
54 55 56 57 58

.LP
.RS 3
.TP 3
options 
59
コマンド行オプション。 
T
tbell 已提交
60 61
.TP 3
class 
62
呼び出されるクラスの名前 
T
tbell 已提交
63 64
.TP 3
file.jar 
65
呼び出される JAR ファイルの名前。必ず \f2\-jar\fP とともに使用する 
T
tbell 已提交
66 67
.TP 3
argument 
68
\f3main\fP 関数に渡される引数 
T
tbell 已提交
69 70 71
.RE

.LP
72
.SH "説明"
T
tbell 已提交
73 74
.LP
.LP
75
\f3java\fP ツールは、Java アプリケーションを起動します。java ツールは、Java Runtime Environment を起動したあと、指定されたクラスをロードし、そのクラスの \f3main\fP メソッドを呼び出すことにより、Java アプリケーションを起動します。
T
tbell 已提交
76 77
.LP
.LP
78
このメソッドは、public および static として宣言する必要があります。 また、値を返してはいけません。 さらに、 \f2String\fP 配列をパラメータとして指定できなければなりません。メソッドの宣言は、次のようになっていなければなりません。
T
tbell 已提交
79 80 81 82
.LP
.nf
\f3
.fl
83
public static void main(String args[])
T
tbell 已提交
84 85
.fl
\fP
D
duke 已提交
86
.fi
T
tbell 已提交
87 88 89

.LP
.LP
90
デフォルトでは、コマンド行オプション以外の最初の引数が、呼び出されるクラスの名前になります。この名前には、完全指定のクラス名を使用する必要があります。\f3\-jar\fP オプションを指定した場合、コマンド行オプション以外の最初の引数が、アプリケーションのクラスファイルとリソースファイルを含む \f3JAR\fP アーカイブの名前になります。この場合、マニフェストの \f3Main\-Class\fP ヘッダーで指定されたクラスが起動クラスになります。
T
tbell 已提交
91 92
.LP
.LP
93
Java Runtime は、ブートストラップクラスパス、インストール型拡張機能、およびユーザークラスパスの 3 箇所から起動クラスと他の使用されているクラスを検索します。
T
tbell 已提交
94 95
.LP
.LP
96
クラス名または JAR ファイル名のあとにある、コマンド行オプション以外の引数は、\f3main\fP 関数に渡されます。
T
tbell 已提交
97
.LP
98
.SH "オプション"
T
tbell 已提交
99 100
.LP
.LP
101
起動ツールには、現在の実行環境および将来のリリースでサポートされる標準オプションがあります。また、仮想マシンの現在の実装では、非標準オプションのセットもサポートされます。これは、将来のリリースで変更される可能性があります。
T
tbell 已提交
102
.LP
103
.SH "標準オプション"
T
tbell 已提交
104 105 106 107 108
.LP
.RS 3
.TP 3
\-client 
.LP
109
Java HotSpot Client VM を選択します。64 ビット対応 JDK は現時点では、このオプションを無視し、代わりに Java Hotspot Server VM を使用します。 
T
tbell 已提交
110
.LP
111
デフォルトの VM の選択については、
D
duke 已提交
112
.na
113
\f2「サーバー \- クラスマシンの検出」\fP @
D
duke 已提交
114
.fi
115
http://java.sun.com/javase/6/docs/technotes/guides/vm/server\-class.htmlを参照してください。  
T
tbell 已提交
116 117 118
.TP 3
\-server 
.LP
119
Java HotSpot Server VM を選択します。64 ビット対応 JDK 上では、サポートされるのは Java Hotspot Server VM だけであるため、\-server オプションが暗黙的に選択されます。 
T
tbell 已提交
120
.LP
121
デフォルトの VM の選択については、
D
duke 已提交
122
.na
123
\f2「サーバー \- クラスマシンの検出」\fP @
T
tbell 已提交
124
.fi
125
http://java.sun.com/javase/6/docs/technotes/guides/vm/server\-class.htmlを参照してください。  
T
tbell 已提交
126 127
.TP 3
\-agentlib:libname[=options] 
128
ネイティブエージェントライブラリ \f2libname\fP をロードします。たとえば次のように指定します。 
T
tbell 已提交
129
.LP
D
duke 已提交
130
\-agentlib:hprof 
T
tbell 已提交
131
.LP
D
duke 已提交
132
\-agentlib:jdwp=help 
T
tbell 已提交
133
.LP
D
duke 已提交
134 135
\-agentlib:hprof=help 
.LP
136
詳細については、
D
duke 已提交
137
.na
138
\f2「JVMTI エージェントのコマンド行オプション」\fP @
D
duke 已提交
139
.fi
140
http://java.sun.com/javase/6/docs/platform/jvmti/jvmti.html#startingを参照してください。  
T
tbell 已提交
141 142
.TP 3
\-agentpath:pathname[=options] 
143
フルパス名を使用して、ネーティブエージェントライブラリをロードします。詳細については、
D
duke 已提交
144
.na
145
\f2「JVMTI エージェントのコマンド行オプション」\fP @
T
tbell 已提交
146
.fi
147
http://java.sun.com/javase/6/docs/platform/jvmti/jvmti.html#startingを参照してください。 
T
tbell 已提交
148 149 150 151
.TP 3
\-classpath classpath 
.TP 3
\-cp classpath 
152
クラスファイルを検索するディレクトリ、JAR アーカイブ、および ZIP アーカイブのリストを指定します。クラスパスの各エントリはコロン (\f3:\fP) で区切ります。\f3\-classpath\fP または \f3\-cp\fP を指定すると、このオプションの値によって \f3CLASSPATH\fP 環境変数の設定がオーバーライドされます。 
T
tbell 已提交
153
.LP
154
\f3\-classpath\fP も \f3\-cp\fP も使用されず、\f3CLASSPATH\fP も設定されていない場合、ユーザークラスパスは現在のディレクトリ (\f4.\fP) になります。  
T
tbell 已提交
155
.LP
156
便宜上、 \f2*\fP のベース名を含むクラスパス要素は、 \f2.jar\fP または \f2.JAR\fP を拡張子に持つディレクトリ内のすべてのファイルのリストを指定するのと同等とみなされます (java プログラムはこの 2 つの呼び出しを区別できない)。
D
duke 已提交
157 158
.br
.br
159
たとえば、ディレクトリ \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 プログラムが展開されていないワイルドカードを認識することはありません。  
T
tbell 已提交
160
.LP
161
クラスパスの詳細は、
D
duke 已提交
162
.na
163
\f2「クラスパスの設定」\fP @
D
duke 已提交
164
.fi
165
http://java.sun.com/javase/6/docs/technotes/tools/index.html#classpathを参照してください。  
T
tbell 已提交
166 167
.TP 3
\-Dproperty=value 
168
システムプロパティーの値を設定します。 
T
tbell 已提交
169 170 171 172
.TP 3
\-d32 
.TP 3
\-d64 
173
それぞれ 32 ビット環境、64 ビット環境でプログラムを実行することを要求します。要求された環境がインストールされていないかサポートされていない場合は、エラーが報告されます。 
T
tbell 已提交
174
.LP
175
現在のところ、Java HotSpot Server VM だけが 64 ビットの操作をサポートしており、\-server オプションを使用する場合は、\-d64 も一緒に使用する必要があります。したがって、\-d64 使用時には「\-client」オプションは無視されます。この仕様は、将来のリリースでは変更になる可能性があります。 
T
tbell 已提交
176
.LP
177
\f3\-d32\fP と \f3\-d64\fP がどちらも指定されていない場合は、デフォルトとして、32 ビット環境で実行されます。この仕様は、将来のリリースでは変更になる可能性があります。  
T
tbell 已提交
178
.TP 3
179
\-enableassertions[:<package name>"..." | :<class name> ] 
T
tbell 已提交
180
.TP 3
181 182
\-ea[:<package name>"..." | :<class name> ] 
アサーションを有効にします。アサーションは、デフォルトでは無効になっています。 
D
duke 已提交
183
.LP
184
引数なしの \f3enableassertions\fP または \f3\-ea\fP を指定すると、アサーションが有効になります。「\f2...\fP」で終わる引数を 1 つ指定すると、指定したパッケージとそのサブパッケージ内でアサーションが有効になります。引数として「\f2...\fP」だけを指定すると、現在の作業ディレクトリにある名前のないパッケージ内でアサーションが有効になります。「\f2...\fP」で終わらない引数を 1 つ指定すると、指定したクラス内でアサーションが有効になります。 
D
duke 已提交
185
.LP
186
単一コマンド行にこれらのスイッチのインスタンスを複数指定した場合は、指定したスイッチが順番に処理されてからクラスがロードされます。したがって、たとえば、パッケージ \f2com.wombat.fruitbat\fP (サブパッケージを含む) 内でのみアサーションを有効にしてプログラムを実行するには、次のようなコマンドを使用します。 
T
tbell 已提交
187 188 189 190 191 192
.nf
\f3
.fl
java \-ea:com.wombat.fruitbat... <Main Class>
.fl
\fP
D
duke 已提交
193 194
.fi
.LP
195
\f3\-enableassertions\fP および \f3\-ea\fP スイッチは、すべてのクラスローダおよびシステムクラスに適用されます。システムクラスにはクラスローダはありません。ただし、この規則には 1 つ例外があります。それは、引数なしの形式でこのスイッチを指定すると、その指定がシステムに適用されない、ということです。この例外を利用すれば、システムクラスを除くすべてのクラスでアサーションを簡単に有効にすることができます。すべてのシステムクラスでアサーションを有効にするために、別のスイッチが用意されています。このあとの \f3\-enablesystemassertions\fP を参照してください。  
T
tbell 已提交
196
.TP 3
197
\-disableassertions[:<package name>"..." | :<class name> ] 
T
tbell 已提交
198
.TP 3
199 200
\-da[:<package name>"..." | :<class name> ] 
アサーションを無効にします。これがデフォルトです。 
T
tbell 已提交
201
.LP
202
引数なしの \f3disableassertions\fP または \f3\-da\fP を指定すると、アサーションが無効になります。「\f2...\fP」で終わる引数を 1 つ指定すると、指定したパッケージとそのサブパッケージ内でアサーションが無効になります。引数として「\f2...\fP」だけを指定すると、現在の作業ディレクトリにある名前のないパッケージ内でアサーションが無効になります。「\f2...\fP」で終わらない引数を 1 つ指定すると、指定したクラス内でアサーションが無効になります。 
T
tbell 已提交
203
.LP
204
パッケージ \f2com.wombat.fruitbat\fP 内ではアサーションを有効にし、クラス \f2com.wombat.fruitbat.Brickbat\fP 内ではアサーションを無効にしたうえで、プログラムを実行するには、次のようなコマンドを使用します。 
T
tbell 已提交
205 206 207
.nf
\f3
.fl
208
java \-ea:com.wombat.fruitbat... \-da:com.wombat.fruitbat.Brickbat \fP\f4<Main Class>\fP\f3
T
tbell 已提交
209 210 211 212
.fl
\fP
.fi
.LP
213
\f3\-disableassertions\fP および \f3\-da\fP スイッチは、すべてのクラスローダおよびシステムクラスに適用されます。システムクラスにはクラスローダはありません。ただし、この規則には 1 つ例外があります。それは、引数なしの形式でこのスイッチを指定すると、その指定がシステムに適用されない、ということです。この例外を利用すれば、システムクラスを除くすべてのクラスでアサーションを簡単に有効にすることができます。すべてのシステムクラスでアサーションを無効にするために、別のスイッチが用意されています。このあとの \f3\-disablesystemassertions\fP を参照してください。  
T
tbell 已提交
214 215 216 217
.TP 3
\-enablesystemassertions 
.TP 3
\-esa 
218
すべてのシステムクラス内でアサーションを有効にします。つまり、システムクラスについてアサーションのデフォルトステータスを \f2true\fP に設定します。 
T
tbell 已提交
219 220 221 222
.TP 3
\-disablesystemassertions 
.TP 3
\-dsa 
223
すべてのシステムクラス内でアサーションを無効にします。 
D
duke 已提交
224
.TP 3
T
tbell 已提交
225
\-jar 
226
JAR ファイルにカプセル化されたプログラムを実行します。最初の引数は、起動クラスの名前ではなく、JAR ファイルの名前にします。このオプションが機能するには、JAR ファイルのマニフェストに\f3「Main\-Class:\fP\f4classname\fP\f3」\fPという形式の行を指定する必要があります。\f2classname\fP には、アプリケーションの開始位置として機能する \f2public\ static\ void\ main(String[]\ args)\fP メソッドを含むクラスを指定します。JAR ファイルとそのマニフェストについては、jar(1)と、
T
tbell 已提交
227
.na
228
\f2Java チュートリアル\fP @
T
tbell 已提交
229
.fi
230
http://download.oracle.com/javase/tutorial/deployment/jarの「Trail: Jar Files」を参照してください。 
T
tbell 已提交
231
.LP
232
このオプションを使用すると、指定した JAR ファイルがすべてのユーザークラスのソースになり、ユーザークラスパスのほかの設定は無視されます。 
D
duke 已提交
233
.LP
234
Solaris 8 では、「java \-jar」オプションで実行できる JAR ファイルは、実行権限のセットを保持しています。このため、「java \-jar」を使用しないで実行することも可能です。Java Archive (JAR) ファイル
T
tbell 已提交
235
.na
236
 @
T
tbell 已提交
237
.fi
238
http://java.sun.com/javase/6/docs/technotes/guides/jar/index.html  
T
tbell 已提交
239 240
.TP 3
\-javaagent:jarpath[=options] 
241
Java プログラミング言語エージェントをロードします。 java.lang.instrument を参照してください。
T
tbell 已提交
242
.na
243
 @
T
tbell 已提交
244
.fi
245 246 247 248 249 250 251
http://java.sun.com/javase/6/docs/api/java/lang/instrument/package\-summary.html 
.TP 3
\-jre\-restrict\-search 
ユーザープライベートな JRE をバージョン検索に含めます。 
.TP 3
\-no\-jre\-restrict\-search 
ユーザープライベートな JRE をバージョン検索から除外します。 
T
tbell 已提交
252 253
.TP 3
\-verbose 
D
duke 已提交
254
.TP 3
T
tbell 已提交
255
\-verbose:class 
256
クラスがロードされるたびにクラスに関する情報を表示します。 
D
duke 已提交
257
.TP 3
T
tbell 已提交
258
\-verbose:gc 
259
ガベージコレクションイベントが発生するたびに報告します。 
D
duke 已提交
260
.TP 3
T
tbell 已提交
261
\-verbose:jni 
262
ネイティブメソッドの使用およびその他の Java Native Interface (JNI) アクティビティーに関する情報を報告します。 
D
duke 已提交
263
.TP 3
T
tbell 已提交
264
\-version 
265
バージョン情報を表示して終了します。 
T
tbell 已提交
266 267
.TP 3
\-version:release 
268
コマンド行に指定されたクラスまたは JAR ファイルが、\f2release\fP で指定されたバージョンを必要としていることを示します。起動された java コマンドのバージョンがこの指定内容を満たさず、かつ適切な実装がシステム上で見つかった場合には、その適切な実装が使用されます。 
D
duke 已提交
269
.LP
270
\f2release\fP では、特定のバージョンを指定できるだけでなく、バージョン文字列と呼ばれるバージョンのリストを指定することもできます。バージョン文字列は、いくつかのバージョン範囲を空白で区切った形式の順序付きリストです。バージョン範囲は、バージョン ID、バージョン ID の後にアスタリスク (*) を付加したもの、バージョン ID の後にプラス記号 (+) を付加したもの、2 つのバージョン範囲をアンパサンド (&) で結合したもの、のいずれかになります。アスタリスクはプレフィックス一致を、プラス記号は指定されたバージョン以上を、アンパサンドは 2 つのバージョン範囲の論理積を、それぞれ意味します。次に例を示します。 
D
duke 已提交
271 272 273
.nf
\f3
.fl
274
\-version:"1.6.0_13 1.6*&1.6.0_10+"
D
duke 已提交
275 276 277
.fl
\fP
.fi
278
上記の意味は、バージョン 1.6.0_13、1.6 をバージョン ID プレフィックスに持つ 1.6.0_10 以上のバージョン、のいずれかをクラスまたは JAR ファイルが必要としている、ということです。バージョン文字列の厳密な構文や定義については、「Java Network Launching Protocol & API Specification (JSR\-56)」の「Appendix A」を参照してください。 
T
tbell 已提交
279
.LP
280
JAR ファイルの場合は通常、バージョン要件をコマンド行に指定するよりも、JAR ファイルのマニフェスト内に指定することが推奨されています。 
T
tbell 已提交
281
.LP
282
このオプションの使用に関する重要なポリシー情報については、後述の「注」節を参照してください。  
T
tbell 已提交
283 284
.TP 3
\-showversion 
285
バージョン情報を表示して続行します。 
T
tbell 已提交
286 287 288 289
.TP 3
\-? 
.TP 3
\-help 
290 291 292 293
使用法を表示して終了します。 
.TP 3
\-splash:imagepath 
\f2imagepath\fP に指定された画像を含むスプラッシュ画面を表示します。 
T
tbell 已提交
294 295
.TP 3
\-X 
296
非標準オプションに関する情報を表示して終了します。 
T
tbell 已提交
297 298 299 300
.RE

.LP
.SS 
301
非標準オプション
T
tbell 已提交
302 303 304 305
.LP
.RS 3
.TP 3
\-Xint 
306
インタプリタ専用モードで動作します。ネイティブコードへのコンパイルは無効になり、すべてのバイトコードがインタプリタによって実行されます。Java HotSpot VM に対応するコンパイラが提供するパフォーマンス上の利点は、このモードでは実現されません。 
T
tbell 已提交
307 308
.TP 3
\-Xbatch 
309
バックグラウンドコンパイルを無効にします。通常、VM では、バックグラウンドコンパイルが終了するまで、メソッドをバックグラウンドタスクとしてコンパイルし、インタプリタモードでメソッドを実行します。\f2\-Xbatch\fP フラグを指定すると、バックグラウンドコンパイルが無効になり、すべてのメソッドのコンパイルが完了するまでフォアグラウンドタスクとして処理されます。 
T
tbell 已提交
310 311
.TP 3
\-Xbootclasspath:bootclasspath 
312
ブートクラスファイルを探すディレクトリ、JAR アーカイブ、および ZIP アーカイブをコロンで区切ったリストで指定します。指定したパスに存在するブートクラスファイルが、Java プラットフォーム JDK に含まれるブートクラスファイルの代わりに使用されます。\f2注: rt.jar 内のクラスをオーバーライドする目的でこのオプションを使用するアプリケーションは、システムに配置しないでください。Java Runtime Environment バイナリコードライセンス違反になります。\fP 
T
tbell 已提交
313 314
.TP 3
\-Xbootclasspath/a:path 
315
ディレクトリ、JAR アーカイブ、および ZIP アーカイブのパスをコロンで区切って指定します。パスはデフォルトのブートストラップクラスパスのあとに追加されます。 
T
tbell 已提交
316 317
.TP 3
\-Xbootclasspath/p:path 
318
ディレクトリ、JAR アーカイブ、および ZIP アーカイブのパスをコロンで区切って指定します。パスはデフォルトのブートストラップクラスパスの前に追加されます。\f2注: rt.jar 内のクラスをオーバーライドする目的でこのオプションを使用するアプリケーションは、システムに配置しないでください。Java Runtime Environment バイナリコードライセンス違反になります。\fP 
T
tbell 已提交
319 320
.TP 3
\-Xcheck:jni 
321
Java Native Interface (JNI) 機能に対して追加チェックを行います。具体的には、Java 仮想マシンは JNI 要求を処理する前に、JNI 関数に渡されるパラメータと、実行環境のデータを検証します。無効なデータが見つかった場合は、ネイティブコードに問題があることを示しているため、Java 仮想マシンは致命的エラーを発生して終了します。このオプションを使用すると、パフォーマンス低下が予想されます。 
T
tbell 已提交
322 323
.TP 3
\-Xfuture 
324
クラスとファイルの形式を厳密にチェックします。下位互換性を保つため、JDK の仮想マシンが実行するデフォルトの形式チェックは、JDK ソフトウェアのバージョン 1.1.x が実行するチェックと同程度の厳密さになっています。\f3\-Xfuture\fP フラグを指定すると、クラスファイル形式の仕様への準拠を強化するためのより厳密なチェックが有効になります。Java アプリケーション起動ツールの将来のリリースでは、より厳密なチェックがデフォルトになるため、新しいコードを開発するときにはこのフラグを使用することをお勧めします。 
T
tbell 已提交
325 326
.TP 3
\-Xnoclassgc 
327
クラスのガベージコレクションを無効にします。このオプションを使用すると、ロード済みクラスからメモリーが回復されることがなくなるため、全体的なメモリー使用量が増大します。この場合、アプリケーションによっては OutOfMemoryError がスローされる可能性があります。 
T
tbell 已提交
328 329
.TP 3
\-Xincgc 
330
インクリメンタルガーベジコレクタを有効にします。インクリメンタルガベージコレクタは、デフォルトでは無効になっています。 有効にすると、プログラムの実行中にガベージコレクションによる一時停止が発生しなくなります。インクリメンタルガベージコレクタは、プログラムと同時に実行することがあり、この場合、プログラムの利用できるプロセッサ能力が低下します。 
T
tbell 已提交
331 332
.TP 3
\-Xloggc:file 
333
\-verbose:gc と同様にガベージコレクションイベントが発生するたびに報告しますが、そのデータを \f2file\fP に記録します。\f2\-verbose:gc\fP を指定したときに報告される情報のほかに、報告される各イベントの先頭に、最初のガベージコレクションイベントからの経過時間 (秒単位) が付け加えられます。 
T
tbell 已提交
334
.LP
335
ネットワークの応答時間によって JVM の実行速度が低下するのを避けるため、このファイルの格納先は、常にローカルファイルシステムにしてください。ファイルシステムが満杯になると、ファイルは切り詰められ、そのファイルにデータが引き続き記録されます。このオプションと \f2\-verbose:gc\fP の両方がコマンド行に指定されている場合は、このオプションが優先されます。  
T
tbell 已提交
336 337
.TP 3
\-Xmsn 
338 339 340 341 342
メモリー割り当てプールの初期サイズをバイト数で指定します。指定する値は、1M バイトより大きい 1024 の倍数にしなければなりません。キロバイトを指定するには、文字 \f2k\fP または \f2K\fP を付けます。メガバイトを指定するには、文字 \f2m\fP または \f2M\fP を付けます。デフォルト値は、実行時にシステムの設定に基づいて選択されます。詳細については、「
.na
\f2HotSpot Ergonomics\fP @
.fi
http://java.sun.com/javase/6/docs/technotes/guides/vm/gc\-ergonomics.html」を参照してください。 
D
duke 已提交
343
.LP
344
例: 
D
duke 已提交
345
.nf
T
tbell 已提交
346 347 348 349 350 351 352 353
\f3
.fl
       \-Xms6291456
.fl
       \-Xms6144k
.fl
       \-Xms6m
.fl
354

T
tbell 已提交
355 356
.fl
\fP
D
duke 已提交
357 358
.fi
.TP 3
T
tbell 已提交
359
\-Xmxn 
360 361 362 363 364
メモリー割り当てプールの最大サイズをバイト数で指定します。指定する値は、2M バイトより大きい 1024 の倍数にしなければなりません。キロバイトを指定するには、文字 \f2k\fP または \f2K\fP を付けます。メガバイトを指定するには、文字 \f2m\fP または \f2M\fP を付けます。デフォルト値は、実行時にシステムの設定に基づいて選択されます。詳細については、「
.na
\f2HotSpot Ergonomics\fP @
.fi
http://java.sun.com/javase/6/docs/technotes/guides/vm/gc\-ergonomics.html」を参照してください。
D
duke 已提交
365
.br
366
例: 
D
duke 已提交
367
.nf
T
tbell 已提交
368 369 370 371 372 373 374 375
\f3
.fl
       \-Xmx83886080
.fl
       \-Xmx81920k
.fl
       \-Xmx80m
.fl
376

T
tbell 已提交
377 378
.fl
\fP
D
duke 已提交
379
.fi
380
Solaris 7 および Solaris 8 SPARC プラットフォームの場合のこの値の上限は、およそ 4000m からオーバーヘッドの量を引いたものです。Solaris 2.6 および x86 プラットフォームの場合の上限は、およそ 2000m からオーバーヘッドの量を引いたものです。Linux プラットフォームの場合の上限は、およそ 2000m からオーバーヘッドの量を引いたものです。 
T
tbell 已提交
381 382
.TP 3
\-Xprof 
383
実行中のプログラムのプロファイルを生成し、プロファイルデータを標準出力に出力します。このオプションは、プログラム開発用のユーティリティーとして提供されています。 本番稼動システムでの使用を目的としたものではありません。  
T
tbell 已提交
384 385
.TP 3
\-Xrs 
386
Java 仮想マシン (JVM) によるオペレーティングシステムシグナルの使用を減らします。 
T
tbell 已提交
387
.LP
388
以前のリリースでは、Java アプリケーションを秩序正しくシャットダウンするためのシャットダウンフック機能が追加されました。この機能により、JVM が突然終了した場合でも、シャットダウン時にユーザークリーンアップコード (データベース接続のクローズなど) を実行できるようになりました。 
T
tbell 已提交
389
.LP
390
Sun の JVM は、シグナルをキャッチすることによって、JVM の異常終了のためのシャットダウンフックを実装します。JVM は、SIGHUP、SIGINT、および SIGTERM を使用して、シャットダウンフックの実行を開始します。 
D
duke 已提交
391
.LP
392
JVM は、デバッグの目的でスレッドスタックをダンプするという、1.2 より前からある機能を実現するためにも、同様の機構を使用します。Sun の JVM は、スレッドダンプを実行するために SIGQUIT を使用します。 
T
tbell 已提交
393
.LP
394
JVM を埋め込んでいるアプリケーションが SIGINT や SIGTERM などのシグナルを頻繁にトラップする必要があると、JVM そのもののシグナルハンドラの処理に支障が出る可能性があります。\f3\-Xrs\fP コマンド行オプションを使用すると、この問題に対処できます。Sun の JVM に対して \f3\-Xrs\fP を使用すると、SIGINT、SIGTERM、SIGHUP、および SIGQUIT に対するシグナルマスクは JVM によって変更されず、これらのシグナルに対するシグナルハンドラはインストールされません。 
T
tbell 已提交
395
.LP
396
\f3\-Xrs\fP を指定した場合、次の 2 つの影響があります。 
D
duke 已提交
397 398
.RS 3
.TP 2
T
tbell 已提交
399
o
400
SIGQUIT によるスレッドダンプを利用できない 
D
duke 已提交
401
.TP 2
T
tbell 已提交
402
o
403
シャットダウンフック処理の実行は、JVM が終了しようとしている時点で System.exit() を呼び出すなどして、ユーザーコード側で行う必要がある 
T
tbell 已提交
404 405 406
.RE
.TP 3
\-Xssn 
407
スレッドのスタックサイズを設定します。 
T
tbell 已提交
408 409
.TP 3
\-XX:+UseAltSigs 
410
VM ではデフォルトで \f2SIGUSR1\fP および \f2SIGUSR2\fP を使用しますが、\f2SIGUSR1\fP および \f2SIGUSR2\fP をシグナル連鎖するアプリケーションと 競合する場合があります。\f2\-XX:+UseAltSigs\fP オプションは、VM にデフォルトとして \f2SIGUSR1\fP と \f2SIGUSR2\fP 以外のシグナルを使用させます。 
T
tbell 已提交
411 412 413
.RE

.LP
414
.SH "注"
D
duke 已提交
415 416
.LP
.LP
417 418
\f3\-version:\fP\f2release\fP コマンド行オプションでは、どんなに複雑にリリースを指定してもかまいません。ただし、現実的なリリース指定の限られたサブセットを使用するだけでも適切なポリシーを表現できるため、それらのサブセットのみが完全にサポートされます。それらのポリシーを次に示します。
.LP
D
duke 已提交
419 420 421
.RS 3
.TP 3
1.
422
任意のバージョン。これは、このオプションを使用しないことで表現できます。 
D
duke 已提交
423 424
.TP 3
2.
425
ある特定のバージョン ID よりも大きい任意のバージョン。次に例を示します。 
D
duke 已提交
426 427 428
.nf
\f3
.fl
429
"1.6.0_10+"
D
duke 已提交
430 431 432
.fl
\fP
.fi
433
この場合、 \f21.6.0_10\fP よりも大きい任意のバージョンが使用されます。これは、指定されたバージョンで特定のインタフェースが導入された (あるいはそのバグが修正された) 場合に便利です。 
D
duke 已提交
434 435
.TP 3
3.
436
ある特定のバージョン ID よりも大きいバージョン。ただし、そのリリースファミリの上限によって制限するもの。次に例を示します。 
T
tbell 已提交
437 438 439
.nf
\f3
.fl
440
"1.6.0_10+&1.6*"
T
tbell 已提交
441 442 443
.fl
\fP
.fi
D
duke 已提交
444 445
.TP 3
4.
446
上の項目 2 と項目 3 の「OR」式。次に例を示します。 
D
duke 已提交
447 448 449
.nf
\f3
.fl
450
"1.6.0_10+&1.6* 1.7+"
D
duke 已提交
451 452 453
.fl
\fP
.fi
454
これは項目 2 に似ていますが、ある変更が特定のリリース (1.7) で導入されたが、その同じ変更が以前のリリースのアップデートでも利用可能になった、という場合に便利です。 
D
duke 已提交
455 456 457
.RE

.LP
458 459
.SH "終了ステータス"
.LP
D
duke 已提交
460
.LP
461 462 463 464 465 466 467 468 469 470
一般に、次の終了値が起動ツールから返されるのは通常、起動元が不正な引数で呼び出されたか、深刻なエラーが発生したか、あるいは Java 仮想マシンから例外がスローされた場合です。ただし Java アプリケーションは、API 呼び出し \f2System.exit(exitValue)\fP を使用して任意の値を返すことを選択することもできます。
.LP
.RS 3
.TP 2
o
\f20\fP: 正常終了 
.TP 2
o
\f2>0\fP: エラーが発生した 
.RE
D
duke 已提交
471

472 473
.LP
.SH "関連項目"
D
duke 已提交
474 475 476
.LP
.RS 3
.TP 2
T
tbell 已提交
477 478
o
javac(1) 
D
duke 已提交
479
.TP 2
T
tbell 已提交
480 481
o
jdb(1) 
D
duke 已提交
482
.TP 2
T
tbell 已提交
483 484
o
javah(1) 
D
duke 已提交
485
.TP 2
T
tbell 已提交
486 487
o
jar(1) 
D
duke 已提交
488
.TP 2
T
tbell 已提交
489
o
D
duke 已提交
490
.na
491
\f2「Java 拡張機能フレームワーク」\fP @
D
duke 已提交
492
.fi
T
tbell 已提交
493
http://java.sun.com/javase/6/docs/technotes/guides/extensions/index.html 
D
duke 已提交
494
.TP 2
T
tbell 已提交
495 496
o
.na
497
\f2「セキュリティー」\fP @
D
duke 已提交
498
.fi
T
tbell 已提交
499 500 501
http://java.sun.com/javase/6/docs/technotes/guides/security/index.html 
.TP 2
o
D
duke 已提交
502
.na
503
\f2「HotSpot VM Specific Options」\fP @
T
tbell 已提交
504 505
.fi
http://java.sun.com/docs/hotspot/VMOptions.html 
D
duke 已提交
506 507 508 509
.RE

.LP