提交 384923db 编写于 作者: L lana

Merge

......@@ -3385,7 +3385,7 @@ with JRE 8, JDK 8, and OpenJDK 8.
included with JRE 8, JDK 8, and OpenJDK 8.
Apache Commons Math 3.2
Apache Derby 10.10.1.3
Apache Derby 10.11.1.2
Apache Jakarta BCEL 5.1
Apache Jakarta Regexp 1.4
Apache Santuario XML Security for Java 1.5.4
......
......@@ -27,7 +27,8 @@
.\" SectDesc: 基本ツール
.\" Software: JDK 8
.\" Arch: 汎用
.\" Part Number: E54734-01
.\" Part Number: E58103-01
.\" Doc ID: JSSON
.\"
.if n .pl 99999
.TH "appletviewer" "1" "2013年11月21日" "JDK 8" "基本ツール"
......
......@@ -27,7 +27,8 @@
.\" SectDesc: 基本ツール
.\" Software: JDK 8
.\" Arch: 汎用
.\" Part Number: E54734-01
.\" Part Number: E58103-01
.\" Doc ID: JSSON
.\"
.if n .pl 99999
.TH "extcheck" "1" "2013年11月21日" "JDK 8" "基本ツール"
......
......@@ -27,7 +27,8 @@
.\" SectDesc: Java IDLおよびRMI-IIOPツール
.\" Software: JDK 8
.\" Arch: 汎用
.\" Part Number: E54734-01
.\" Part Number: E58103-01
.\" Doc ID: JSSON
.\"
.if n .pl 99999
.TH "idlj" "1" "2013年11月21日" "JDK 8" "Java IDLおよびRMI-IIOPツール"
......
......@@ -27,7 +27,8 @@
.\" SectDesc: 基本ツール
.\" Software: JDK 8
.\" Arch: 汎用
.\" Part Number: E54734-01
.\" Part Number: E58103-01
.\" Doc ID: JSSON
.\"
.if n .pl 99999
.TH "jar" "1" "2013年11月21日" "JDK 8" "基本ツール"
......@@ -384,9 +385,7 @@ JAR
.\}
.SH "例"
.PP
\fB例 1\fR
.br
冗長な出力による現在のディレクトリからのすべてのファイルの追加
\fB例 1 \fR冗長な出力による現在のディレクトリからのすべてのファイルの追加
.RS 4
.sp
.if n \{\
......@@ -415,9 +414,7 @@ JAR
.\}
.RE
.PP
\fB例 2\fR
.br
サブディレクトリからのファイルの追加
\fB例 2 \fRサブディレクトリからのファイルの追加
.RS 4
.sp
.if n \{\
......@@ -449,9 +446,7 @@ JAR
.\}
.RE
.PP
\fB例 3\fR
.br
JARのコンテンツのリスト
\fB例 3 \fRJARのコンテンツのリスト
.RS 4
.sp
.if n \{\
......@@ -485,9 +480,7 @@ JAR
.\}
.RE
.PP
\fB例 4\fR
.br
索引の追加
\fB例 4 \fR索引の追加
.RS 4
株式取引のアプリケーションの相互依存クラスを、\fBmain\&.jar\fR、\fBbuy\&.jar\fRおよび\fBsell\&.jar\fRの3つのJARファイルに分割する場合、\fBi\fRオプションを使用します。\fBmain\&.jar\fRマニフェスト内の\fBClass\-Path\fR属性を指定する場合、\fBi\fRオプションを使用して、アプリケーションのクラス・ロードの速度を向上できます。
.sp
......
......@@ -27,7 +27,8 @@
.\" SectDesc: セキュリティ・ツール
.\" Software: JDK 8
.\" Arch: 汎用
.\" Part Number: E54734-01
.\" Part Number: E58103-01
.\" Doc ID: JSSON
.\"
.if n .pl 99999
.TH "jarsigner" "1" "2013年11月21日" "JDK 8" "セキュリティ・ツール"
......@@ -344,7 +345,7 @@ SHA256
.PP
これら2つのファイルのベース・ファイル名は、\fB\-sigFile\fRオプションの値から作成されます。たとえば、オプションが\fB\-sigFile MKSIGN\fRの場合、ファイルは\fBMKSIGN\&.SF\fRおよび\fBMKSIGN\&.DSA\fRという名前になります。
.PP
コマンド行で\fB\-sigfile\fRオプションを指定しなかった場合、\fB\&.SF\fRファイルと\fB\&.DSA\fRファイルのベース・ファイル名は、コマンド行で指定された別名の先頭の8文字をすべて大文字に変換したものになります。別名が8文字未満の場合は、別名がそのまま使用されます。別名に、署名ファイル名で使用できない文字が含まれている場合、ファイル名の作成時に、該当する文字が下線(_)文字に変換されます。有効な文字は、アルファベット、数字、下線およびハイフンです。
コマンド行で\fB\-sigfile\fRオプションを指定しなかった場合、\fB\&.SF\fRファイルと\fB\&.DSA\fRファイルのベース・ファイル名は、コマンド行で指定された別名の先頭の8文字をすべて大文字に変換したものになります。別名が8文字未満の場合は、別名がそのまま使用されます。別名に、署名ファイル名で使用できない文字が含まれている場合、ファイル名の作成時に、該当する文字がアンダースコア(_)文字に変換されます。有効な文字は、アルファベット、数字、アンダースコアおよびハイフンです。
.PP
署名ファイル
.PP
......@@ -521,7 +522,7 @@ JAR
.sp -1
.IP \(bu 2.3
.\}
イタリックまたは下線付きの項目(オプションの値)の実際の値は、指定する必要があります。
イタリックまたは下線付きの項目(オプションの値)の実際の値は、指定する必要があります。
.RE
.sp
.RS 4
......@@ -664,9 +665,9 @@ JAR
.RS 4
生成された\fB\&.SF\fRファイルおよび\fB\&.DSA\fRファイルに使用するベース・ファイル名を指定します。たとえば、ファイルが\fBDUKESIGN\fRの場合、生成される\fB\&.SF\fRおよび\fB\&.DSA\fRファイルは、\fBDUKESIGN\&.SF\fRおよび\fBDUKESIGN\&.DSA\fRという名前で、署名付きJARファイルの\fBMETA\-INF\fRディレクトリに格納されます。
.sp
ファイル内の文字は、セット\fBa\-zA\-Z0\-9_\-\fRから指定される必要があります。アルファベット、数字、下線およびハイフン文字のみを使用できます。\fB\&.SF\fRおよび\fB\&.DSA\fRのファイル名では、小文字はすべて大文字に変換されます。
ファイル内の文字は、セット\fBa\-zA\-Z0\-9_\-\fRから指定される必要があります。アルファベット、数字、アンダースコアおよびハイフン文字のみを使用できます。\fB\&.SF\fRおよび\fB\&.DSA\fRのファイル名では、小文字はすべて大文字に変換されます。
.sp
コマンド行で\fB\-sigfile\fRオプションを指定しなかった場合、\fB\&.SF\fRファイルと\fB\&.DSA\fRファイルのベース・ファイル名は、コマンド行で指定された別名の先頭の8文字をすべて大文字に変換したものになります。別名が8文字未満の場合は、別名がそのまま使用されます。別名に、署名ファイル名で無効な文字が含まれている場合、ファイル名を作成するために、該当する文字が下線(_)文字に変換されます。
コマンド行で\fB\-sigfile\fRオプションを指定しなかった場合、\fB\&.SF\fRファイルと\fB\&.DSA\fRファイルのベース・ファイル名は、コマンド行で指定された別名の先頭の8文字をすべて大文字に変換したものになります。別名が8文字未満の場合は、別名がそのまま使用されます。別名に、署名ファイル名で無効な文字が含まれている場合、ファイル名を作成するために、該当する文字がアンダースコア(_)文字に変換されます。
.RE
.PP
\-sigalg \fIalgorithm\fR
......@@ -1001,7 +1002,7 @@ noTimestamp
.RE
.\}
.PP
検証が成功すると、\fBjar verified\fRが表示されます。そうでない場合は、エラー・メッセージが表示されます。\fB\-verbose\fRオプションを使用すると、詳細情報を取得できます。\fBjarsigner\fRを\fB\-verbose\fRオプションとともに使用するサンプルを、次に示します。
検証が成功すると、\fBjar verified\fRが表示されます。有効でない場合は、エラー・メッセージが表示されます。\fB\-verbose\fRオプションを使用すると、詳細情報を取得できます。\fBjarsigner\fRを\fB\-verbose\fRオプションとともに使用するサンプルを、次に示します。
.sp
.if n \{\
.RS 4
......
此差异已折叠。
......@@ -23,14 +23,15 @@
.\"
.\" Title: javac
.\" Language: Japanese
.\" Date: 2014年8月8
.\" Date: 2015年3月3
.\" SectDesc: 基本ツール
.\" Software: JDK 8
.\" Arch: 汎用
.\" Part Number: E54734-01
.\" Part Number: E58103-01
.\" Doc ID: JSSON
.\"
.if n .pl 99999
.TH "javac" "1" "2014年8月8日" "JDK 8" "基本ツール"
.TH "javac" "1" "2015年3月3日" "JDK 8" "基本ツール"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
......@@ -154,7 +155,7 @@ javac \- Java
.PP
\-cp \fIpath\fR or \-classpath \fIpath\fR
.RS 4
ユーザー・クラス・ファイル、および(オプションで)注釈プロセッサとソース・ファイルを検索する場所を指定します。このクラス・パスは\fBCLASSPATH\fR環境変数のユーザー・クラス・パスをオーバーライドします。\fBCLASSPATH\fR、\fB\-cp\fR、\fB\-classpath\fRのいずれも指定されていない場合、ユーザーの\fIクラス・パス\fRは、現在のディレクトリになります。Setting the Class Path を参照してください。
ユーザー・クラス・ファイル、および(オプションで)注釈プロセッサとソース・ファイルを検索する場所を指定します。このクラス・パスは\fBCLASSPATH\fR環境変数のユーザー・クラス・パスをオーバーライドします。\fBCLASSPATH\fR、\fB\-cp\fR、\fB\-classpath\fRのいずれも指定されていない場合、ユーザーの\fIクラス・パス\fRは、現在のディレクトリになります。クラス・パスの設定 を参照してください。
.sp
\fB\-sourcepath\fRオプションが指定されていない場合、ソース・ファイルもユーザー・クラス・パスから検索されます。
.sp
......@@ -1122,9 +1123,7 @@ varargs
.PP
\fBjavac\fRコマンドを実行するときに、各引数ファイルのパスと名前の先頭にアットマーク(@)文字を付けて渡します。\fBjavac\fRコマンドは、アットマーク(@)で始まる引数を見つけると、そのファイルの内容を展開して引数リストに挿入します。
.PP
\fB例 1\fR
.br
単一の引数ファイル
\fB例 1 \fR単一の引数ファイル
.RS 4
\fBargfile\fRという名前の単一の引数ファイルを使用して、すべての\fBjavac\fR引数を格納する場合は、次のように指定します。
.sp
......@@ -1141,9 +1140,7 @@ varargs
この引数ファイルには、例2で示されている両方のファイルの内容を入れることができます。
.RE
.PP
\fB例 2\fR
.br
2つの引数ファイル
\fB例 2 \fR2つの引数ファイル
.RS 4
\fBjavac\fRオプション用とソース・ファイル名用に、2つの引数ファイルを作成できます。次のリストには、行の継続文字はありません。
.sp
......@@ -1216,9 +1213,7 @@ varargs
.\}
.RE
.PP
\fB例 3\fR
.br
パスを使用した引数ファイル
\fB例 3 \fRパスを使用した引数ファイル
.RS 4
引数ファイルはパスを指定できますが、ファイル内のすべてのファイル名は、(\fBpath1\fRや\fBpath2\fRではなく)次のように現在の作業ディレクトリに相対的となります。
.sp
......@@ -1317,9 +1312,7 @@ varargs
名前が\fBcom\&.sun\&.tools\&.javac\fRで始まるパッケージ(\fBcom\&.sun\&.tools\&.javac\fRのサブパッケージ)で検出される他のすべてのクラスおよびメソッドは、完全に内部用であり、いつでも変更される可能性があります。
.SH "例"
.PP
\fB例 1\fR
.br
簡単なプログラムのコンパイル
\fB例 1 \fR簡単なプログラムのコンパイル
.RS 4
この例では、greetingsディレクトリで\fBHello\&.java\fRソース・ファイルをコンパイルする方法を示しています。\fBHello\&.java\fRで定義されたクラスは、\fBgreetings\&.Hello\fRと呼ばれます。greetingsディレクトリは、ソース・ファイルとクラス・ファイルの両方があるパッケージ・ディレクトリで、現在のディレクトリのすぐ下にあります。これにより、デフォルトのユーザー・クラス・パスを使用できるようになります。また、\fB\-d\fRオプションを使用して別の出力先ディレクトリを指定する必要もありません。
.sp
......@@ -1372,9 +1365,7 @@ greetings\&.Hello
.\}
.RE
.PP
\fB例 2\fR
.br
複数のソース・ファイルのコンパイル
\fB例 2 \fR複数のソース・ファイルのコンパイル
.RS 4
この例では、\fBgreetings\fRパッケージのソース・ファイル\fBAloha\&.java\fR、\fBGutenTag\&.java\fR、\fBHello\&.java\fRおよび\fBHi\&.java\fRをコンパイルします。
.sp
......@@ -1393,9 +1384,7 @@ greetings\&.Hello
.\}
.RE
.PP
\fB例 3\fR
.br
ユーザー・クラス・パスの指定
\fB例 3 \fRユーザー・クラス・パスの指定
.RS 4
前述の例のソース・ファイルのうち1つを変更した後に、そのファイルを再コンパイルします。
.sp
......@@ -1450,9 +1439,7 @@ greetings\&.Hello
.\}
.RE
.PP
\fB例 4\fR
.br
ソース・ファイルとクラス・ファイルの分離
\fB例 4 \fRソース・ファイルとクラス・ファイルの分離
.RS 4
次の例では、\fBjavac\fRを使用して、JVM 1\&.7上で実行するコードをコンパイルします。
.sp
......@@ -1486,9 +1473,7 @@ greetings\&.Hello
適切なバージョンのブートストラップ・クラスを指定しない場合、コンパイラは古い言語仕様(この例では、バージョン1\&.7のJavaプログラミング言語)を新しいブートストラップ・クラスと組み合せて使用します。その結果、存在しないメソッドへの参照が含まれていることがあるため、クラス・ファイルが古いプラットフォーム(この場合はJava SE 7)で動作しない可能性があります。
.RE
.PP
\fB例 5\fR
.br
クロス・コンパイル
\fB例 5 \fRクロス・コンパイル
.RS 4
この例では、\fBjavac\fRを使用して、JVM 1\&.7上で実行するコードをコンパイルします。
.sp
......@@ -1503,7 +1488,7 @@ greetings\&.Hello
.if n \{\
.RE
.\}
\fB \-source 1\&.7\fRオプションにより、OldCode\&.javaのコンパイルにはリリース1\&.7(または7)のJavaプログラミング言語が使用されます。\fB\-target 1\&.7\fRオプションにより、JVM 1\&.7と互換性のあるクラス・ファイルが生成されます。ほとんどの場合、\fB\-target\fRの値は\fB\-source\fRの値になります。この例では、\fB\-target\fRオプションは省略されます。
\fB \-source 1\&.7\fRオプションにより、OldCode\&.javaのコンパイルにはリリース1\&.7(または7)のJavaプログラミング言語が使用されます。\fB\-target 1\&.7\fRオプションにより、JVM 1\&.7と互換性のあるクラス・ファイルが生成されます。
.sp
\fB\-bootclasspath\fRオプションを使用して、適切なバージョンのブートストラップ・クラス(\fBrt\&.jar\fRライブラリ)を指定する必要があります。指定しない場合は、コンパイラによって次の警告が生成されます。
.sp
......
此差异已折叠。
......@@ -27,7 +27,8 @@
.\" SectDesc: 基本ツール
.\" Software: JDK 8
.\" Arch: 汎用
.\" Part Number: E54734-01
.\" Part Number: E58103-01
.\" Doc ID: JSSON
.\"
.if n .pl 99999
.TH "javah" "1" "2013年11月21日" "JDK 8" "基本ツール"
......@@ -77,7 +78,7 @@ C
.PP
\fBjavah\fRコマンドは、ネイティブ・メソッドを実装するために必要なCヘッダーとソース・ファイルを生成します。作成されたヘッダーとソース・ファイルは、ネイティブ・ソース・コードからオブジェクトのインスタンス変数を参照するためにCプログラムによって使用されます。\fB\&.h\fRファイルは、対応するクラスと一致する配置を持つ\fBstruct\fR定義を含みます。\fBstruct\fRのフィールドは、クラスのインスタンス変数に対応します。
.PP
ヘッダー・ファイルとその中で宣言される構造体の名前はクラスの名前から派生します。\fBjavah\fRコマンドに渡されるクラスがパッケージの中にある場合、パッケージ名はヘッダー・ファイル名と構造体名の両方の先頭に付加されます。下線(_)が名前の区切り文字として使用されます。
ヘッダー・ファイルとその中で宣言される構造体の名前はクラスの名前から派生します。\fBjavah\fRコマンドに渡されるクラスがパッケージの中にある場合、パッケージ名はヘッダー・ファイル名と構造体名の両方の先頭に付加されます。アンダースコア(_)が名前の区切り文字として使用されます。
.PP
デフォルトでは\fBjavah\fRコマンドは、コマンド行にリストされる各クラスのヘッダー・ファイルを作成し、現在のディレクトリにファイルを置きます。ソース・ファイルを作成するには、\fB\-stubs\fRオプションを使用してください。1つのファイルの中に、リストされたすべてのクラスの結果を連結するには、\fB\-o\fRオプションを使用してください。
.PP
......
......@@ -27,7 +27,8 @@
.\" SectDesc: 基本ツール
.\" Software: JDK 8
.\" Arch: 汎用
.\" Part Number: E54734-01
.\" Part Number: E58103-01
.\" Doc ID: JSSON
.\"
.if n .pl 99999
.TH "javap" "1" "2014年8月8日" "JDK 8" "基本ツール"
......
......@@ -27,7 +27,8 @@
.\" SectDesc: Java Web Startツール
.\" Software: JDK 8
.\" Arch: 汎用
.\" Part Number: E54734-01
.\" Part Number: E58103-01
.\" Doc ID: JSSON
.\"
.if n .pl 99999
.TH "javaws" "1" "2013年11月21日" "JDK 8" "Java Web Startツール"
......
......@@ -27,7 +27,8 @@
.\" SectDesc: トラブルシューティング・ツール
.\" Software: JDK 8
.\" Arch: 汎用
.\" Part Number: E54734-01
.\" Part Number: E58103-01
.\" Doc ID: JSSON
.\"
.if n .pl 99999
.TH "jcmd" "1" "2013年11月21日" "JDK 8" "トラブルシューティング・ツール"
......
......@@ -27,7 +27,8 @@
.\" SectDesc: Javaトラブルシューティング、プロファイリング、モニタリングおよび管理ツール
.\" Software: JDK 8
.\" Arch: 汎用
.\" Part Number: E54734-01
.\" Part Number: E58103-01
.\" Doc ID: JSSON
.\"
.if n .pl 99999
.TH "jconsole" "1" "2013年11月21日" "JDK 8" "Javaトラブルシューティング、プロファイリング、モニタリン"
......@@ -81,7 +82,7 @@ http://docs\&.oracle\&.com/javase/8/docs/api/javax/management/remote/JMXServiceU
.RE
.SH "説明"
.PP
\fBjconsole\fRコマンドは、ローカル・マシンまたはリモート・マシン上のJavaアプリケーションと仮想マシンをモニターおよび管理するグラフィカル・コンソール・ツールを起動します。
\fBjconsole\fRコマンドは、ローカル・マシンまたはリモート・マシン上のJavaアプリケーションと仮想マシンのモニターと管理を行うグラフィカル・コンソール・ツールを起動します。
.PP
Windows上では、\fBjconsole\fRコマンドはコンソール・ウィンドウと関連付けられていません。ただし、\fBjconsole\fRコマンドが失敗すると、エラー情報を示すダイアログ・ボックスが表示されます。
.SH "オプション"
......@@ -93,7 +94,7 @@ Windows
.PP
\-notile
.RS 4
最初ウィンドウをタイル表示しません(複数接続の場合)。
最初ウィンドウをタイル表示しません(複数接続の場合)。
.RE
.PP
\-pluginpath \fIplugins\fR
......
......@@ -27,7 +27,8 @@
.\" SectDesc: 基本ツール
.\" Software: JDK 8
.\" Arch: 汎用
.\" Part Number: E54734-01
.\" Part Number: E58103-01
.\" Doc ID: JSSON
.\"
.if n .pl 99999
.TH "jdb" "1" "2013年11月21日" "JDK 8" "基本ツール"
......@@ -318,7 +319,7 @@ Java HotSpot VM
.RS 4
JVMに\fBoption\fRを渡します。optionには、Javaアプリケーション起動ツールのリファレンス・ページに記載されているオプションを1つ指定します。たとえば、\fB\-J\-Xms48m\fRと指定すると、スタートアップ・メモリーは48MBに設定されます。java(1)を参照してください。
.RE
.SH "デバッグ対象のプロセスに転送されるオプション"
.SH "デバッガ・プロセスに転送されるオプション"
.PP
\-v \-verbose[:\fIclass\fR|gc|jni]
.RS 4
......
......@@ -27,7 +27,8 @@
.\" SectDesc: 基本ツール
.\" Software: JDK 8
.\" Arch: 汎用
.\" Part Number: E54734-01
.\" Part Number: E58103-01
.\" Doc ID: JSSON
.\"
.if n .pl 99999
.TH "jdeps" "1" "2013年11月21日" "JDK 8" "基本ツール"
......@@ -113,7 +114,7 @@ DOT
.RS 4
クラス・ファイルの検索場所を指定します。
.sp
Setting the Class Path も参照してください。
クラス・パスの設定 も参照してください。
.RE
.PP
\-p <\fIpkg name\fR>
......
......@@ -27,7 +27,8 @@
.\" SectDesc: トラブルシューティング・ツール
.\" Software: JDK 8
.\" Arch: 汎用
.\" Part Number: E54734-01
.\" Part Number: E58103-01
.\" Doc ID: JSSON
.\"
.if n .pl 99999
.TH "jhat" "1" "2013年11月21日" "JDK 8" "トラブルシューティング・ツール"
......
......@@ -27,7 +27,8 @@
.\" SectDesc: トラブルシューティング・ツール
.\" Software: JDK 8
.\" Arch: 汎用
.\" Part Number: E54734-01
.\" Part Number: E58103-01
.\" Doc ID: JSSON
.\"
.if n .pl 99999
.TH "jinfo" "1" "2013年11月21日" "JDK 8" "トラブルシューティング・ツール"
......@@ -115,7 +116,7 @@ jinfo \-
.RE
.SH "説明"
.PP
\fBjinfo\fRコマンドは、指定されたJavaプロセスやコア・ファイルまたはリモート・デバッグ・サーバーのJava構成情報を出力します。構成情報には、Javaシステム・プロパティとJava Virtual Machine (JVM)のコマンド行フラグが含まれています。指定されたプロセスが64ビットJVM上で実行されている場合、\fB\-J\-d64\fRオプションを指定する必要がある場合があります。次に例を示します。\fBjinfo\fR
\fBjinfo\fRコマンドは、指定されたJavaプロセスやコア・ファイルまたはリモート・デバッグ・サーバーのJava構成情報を出力します。構成情報には、Javaシステム・プロパティとJava仮想マシン(JVM)のコマンド行フラグが含まれています。指定されたプロセスが64ビットJVM上で実行されている場合、\fB\-J\-d64\fRオプションを指定する必要がある場合があります。次に例を示します。\fBjinfo\fR
\fB\-J\-d64 \-sysprops pid\fR。
.PP
このユーティリティはサポート対象外であり、将来のJDKのリリースでは利用できなくなる可能性があります。\fBdbgeng\&.dll\fRが存在していないWindowsシステムでは、Debugging Tools For Windowsをインストールしないとこれらのツールが正常に動作しません。\fBPATH\fR環境変数には、ターゲット・プロセスによって使用されるjvm\&.dllの場所、またはクラッシュ・ダンプ・ファイルが生成された場所が含まれるようにしてください。たとえば、\fBset PATH=%JDK_HOME%\ejre\ebin\eclient;%PATH%\fRです。
......
......@@ -23,14 +23,15 @@
.\"
.\" Title: jjs
.\" Language: Japanese
.\" Date: 2013年11月21
.\" Date: 2015年3月3
.\" SectDesc: 基本ツール
.\" Software: JDK 8
.\" Arch: 汎用
.\" Part Number: E54734-01
.\" Part Number: E58103-01
.\" Doc ID: JSSON
.\"
.if n .pl 99999
.TH "jjs" "1" "2013年11月21日" "JDK 8" "基本ツール"
.TH "jjs" "1" "2015年3月3日" "JDK 8" "基本ツール"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
......@@ -113,7 +114,7 @@ jjs \- Nashorn
.PP
\-cp \fIpath\fR
.br
\-\-classpath \fIpath\fR
\-classpath \fIpath\fR
.RS 4
サポートするクラスへのパスを指定します。複数のパスを設定するには、このオプションを繰り返すか、または各パスをコロン(:)で区切ります。
.RE
......@@ -221,6 +222,11 @@ jjs \- Nashorn
このオプションを繰り返し使用すると、複数の\fBjava\fRコマンド・オプションを渡すことができます。
.RE
.PP
\-\-language=[es5]
.RS 4
ECMAScript言語バージョンを指定します。デフォルトのバージョンはES5です。
.RE
.PP
\-\-lazy\-compilation
.RS 4
レイジー・コード生成戦略(つまり、スクリプト全体が一度にコンパイルされない)を有効にします。このオプションは試験的なものです。
......@@ -240,13 +246,17 @@ jjs \- Nashorn
.\}
.nf
\fB\-\-log=fields:finest,codegen:info\fR
.fi
.if n \{\
.RE
.\}
.RE
.PP
\-\-optimistic\-types=[true|false]
.RS 4
再コンパイルの最適化を解除してオプティミスティック・タイプ仮定を有効または無効にします。オプティミスティック・タイプを使用した実行によって最終的な速度が向上しますが、ウォームアップ時間が増える場合があります。
.RE
.PP
\-\-package=\fIname\fR
.RS 4
生成されたクラス・ファイルを追加するパッケージを指定します。
......@@ -323,7 +333,7 @@ jjs \- Nashorn
.br
\-timezone=\fIzone\fR
.RS 4
スクリプトの実行に対し指定したタイム・ゾーンを設定します。OSで設定されたタイム・ゾーンをオーバーライドし、\fBDate\fRオブジェクトで使用されます。
スクリプトの実行に対し指定したタイムゾーンを設定します。OSで設定されたタイムゾーンをオーバーライドし、\fBDate\fRオブジェクトで使用されます。
.RE
.PP
\-tcs=\fIparameter\fR
......@@ -366,9 +376,7 @@ Nashorn
.RE
.SH "例"
.PP
\fB例 1\fR
.br
Nashornを使用したスクリプトの実行
\fB例 1 \fRNashornを使用したスクリプトの実行
.RS 4
.sp
.if n \{\
......@@ -383,9 +391,7 @@ Nashorn
.\}
.RE
.PP
\fB例 2\fR
.br
対話型モードでのNashornの実行
\fB例 2 \fR対話型モードでのNashornの実行
.RS 4
.sp
.if n \{\
......@@ -404,9 +410,7 @@ Nashorn
.\}
.RE
.PP
\fB例 3\fR
.br
Nashornへの引数の渡し
\fB例 3 \fRNashornへの引数の渡し
.RS 4
.sp
.if n \{\
......
......@@ -27,7 +27,8 @@
.\" SectDesc: トラブルシューティング・ツール
.\" Software: JDK 8
.\" Arch: 汎用
.\" Part Number: E54734-01
.\" Part Number: E58103-01
.\" Doc ID: JSSON
.\"
.if n .pl 99999
.TH "jmap" "1" "2013年11月21日" "JDK 8" "トラブルシューティング・ツール"
......
......@@ -27,7 +27,8 @@
.\" SectDesc: モニタリング・ツール
.\" Software: JDK 8
.\" Arch: 汎用
.\" Part Number: E54734-01
.\" Part Number: E58103-01
.\" Doc ID: JSSON
.\"
.if n .pl 99999
.TH "jps" "1" "2013年11月21日" "JDK 8" "モニタリング・ツール"
......
......@@ -27,7 +27,8 @@
.\" SectDesc: スクリプティング・ツール
.\" Software: JDK 8
.\" Arch: 汎用
.\" Part Number: E54734-01
.\" Part Number: E58103-01
.\" Doc ID: JSSON
.\"
.if n .pl 99999
.TH "jrunscript" "1" "2013年11月21日" "JDK 8" "スクリプティング・ツール"
......@@ -86,7 +87,7 @@ jrunscript \-
\-cp \fIpath\fR
.RS 4
\fB\-classpath\fR
\fBpath\fRと同じです。
\fIpath\fRと同じです。
.RE
.PP
\-D\fIname\fR=\fIvalue\fR
......@@ -96,7 +97,7 @@ Java
.PP
\-J\fIflag\fR
.RS 4
\fBflag\fRを、\fBjrunscript\fRコマンドが実行されているJava Virtual Machineに直接渡します。
\fBflag\fRを、\fBjrunscript\fRコマンドが実行されているJava仮想マシンに直接渡します。
.RE
.PP
\-I \fIlanguage\fR
......
......@@ -27,7 +27,8 @@
.\" SectDesc: トラブルシューティング・ツール
.\" Software: JDK 8
.\" Arch: 汎用
.\" Part Number: E54734-01
.\" Part Number: E58103-01
.\" Doc ID: JSSON
.\"
.if n .pl 99999
.TH "jsadebugd" "1" "2013年11月21日" "JDK 8" "トラブルシューティング・ツール"
......@@ -95,7 +96,7 @@ jsadebugd \- Java
.RE
.SH "説明"
.PP
\fBjsadebugd\fRコマンドは、Javaプロセスまたはコア・ファイルに接続し、デバッグ・サーバーとして機能します。\fBjstack\fR、\fBjmap\fRおよび\fBjinfo\fRなどのリモート・クライアントは、Java Remote Method Invocation(RMI)を使用しているサーバーに接続できます。\fBjsadebugd\fRコマンドを起動する前に、\fBrmiregistry\fRコマンドでRMIレジストリを次のように起動します。\fI$JAVA_HOME\fRはJDKのインストール・ディレクトリです。
\fBjsadebugd\fRコマンドは、Javaプロセスまたはコア・ファイルに接続し、デバッグ・サーバーとして機能します。\fBjstack\fR、\fBjmap\fRおよび\fBjinfo\fRなどのリモート・クライアントは、Java Remote Method Invocation (RMI)を使用しているサーバーに接続できます。\fBjsadebugd\fRコマンドを起動する前に、\fBrmiregistry\fRコマンドでRMIレジストリを次のように起動します。\fI$JAVA_HOME\fRはJDKのインストール・ディレクトリです。
.sp
.if n \{\
.RS 4
......
......@@ -27,7 +27,8 @@
.\" SectDesc: トラブルシューティング・ツール
.\" Software: JDK 8
.\" Arch: 汎用
.\" Part Number: E54734-01
.\" Part Number: E58103-01
.\" Doc ID: JSSON
.\"
.if n .pl 99999
.TH "jstack" "1" "2013年11月21日" "JDK 8" "トラブルシューティング・ツール"
......@@ -115,7 +116,7 @@ jstack \- Java
.RE
.SH "説明"
.PP
\fBjstack\fRコマンドは、指定されたJavaプロセス、コア・ファイルまたはリモート・デバッグ・サーバーに対するJavaスレッドのJavaスタック・トレースを出力します。Javaフレームごとに、フルクラス名、メソッド名、バイトコード・インデックス(bci)、および行番号(利用可能な場合)が出力されます。\fB\-m\fRオプションを使用すると、\fBjstack\fRコマンドは、すべてのスレッドのJavaフレームとネイティブ・フレームの両方を、プログラム・カウンタ(PC)とともに出力します。ネイティブ・フレームごとに、PCに最も近いネイティブ・シンボル(利用可能な場合)が出力されます。C++分解名は分解解除されません。C++名を分解解除するには、このコマンドの出力を\fBc++filt\fRにパイプします。指定されたプロセスが64ビットJava Virtual Machine上で実行されている場合は、\fB\-J\-d64\fRオプションを指定する必要があります(例:
\fBjstack\fRコマンドは、指定されたJavaプロセス、コア・ファイルまたはリモート・デバッグ・サーバーに対するJavaスレッドのJavaスタック・トレースを出力します。Javaフレームごとに、フルクラス名、メソッド名、バイトコード・インデックス(bci)、および行番号(利用可能な場合)が出力されます。\fB\-m\fRオプションを使用すると、\fBjstack\fRコマンドは、すべてのスレッドのJavaフレームとネイティブ・フレームの両方を、プログラム・カウンタ(PC)とともに出力します。ネイティブ・フレームごとに、PCに最も近いネイティブ・シンボル(利用可能な場合)が出力されます。C++分解名は分解解除されません。C++名を分解解除するには、このコマンドの出力を\fBc++filt\fRにパイプします。指定されたプロセスが64ビットJava仮想マシン上で実行されている場合は、\fB\-J\-d64\fRオプションを指定する必要があります(例:
\fBjstack \-J\-d64 \-m pid\fR)。
.PP
\fB注意\fR
......
......@@ -23,14 +23,15 @@
.\"
.\" Title: jstat
.\" Language: Japanese
.\" Date: 2011年5月10
.\" Date: 2015年3月3
.\" SectDesc: モニタリング・ツール
.\" Software: JDK 8
.\" Arch: 汎用
.\" Part Number: E54734-01
.\" Part Number: E58103-01
.\" Doc ID: JSSON
.\"
.if n .pl 99999
.TH "jstat" "1" "2011年5月10日" "JDK 8" "モニタリング・ツール"
.TH "jstat" "1" "2015年3月3日" "JDK 8" "モニタリング・ツール"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
......@@ -276,6 +277,10 @@ Java HotSpot VM Just\-in\-Time
.sp
\fBMU\fR: メタスペースの使用率(KB)。
.sp
\fBCCSC\fR: 圧縮されたクラス領域の容量(KB)。
.sp
\fBCCSU\fR: 使用されている圧縮されたクラス領域(KB)。
.sp
\fBYGC\fR: 若い世代のガベージ・コレクション・イベントの数。
.sp
\fBYGCT\fR: 若い世代のガベージ・コレクション時間。
......@@ -317,6 +322,12 @@ Java HotSpot VM Just\-in\-Time
.sp
\fBMC\fR: メタスペースの容量(KB)。
.sp
\fBCCSMN\fR: 圧縮されたクラス領域の最小容量(KB)。
.sp
\fBCCSMX\fR: 圧縮されたクラス領域の最大容量(KB)。
.sp
\fBCCSC\fR: 圧縮されたクラス領域の容量(KB)。
.sp
\fBYGC\fR: 若い世代のGCイベント数。
.sp
\fBFGC\fR: フルGCイベント数。
......@@ -326,11 +337,9 @@ Java HotSpot VM Just\-in\-Time
.RS 4
このオプションは、\fB\-gcutil\fRオプションと同じガベージ・コレクション統計データのサマリーを表示しますが、最後のガベージ・コレクション・イベントと(適用可能な場合は)現在のガベージ・コレクション・イベントの原因が含まれます。\fB\-gcutil\fRで一覧表示される列のほか、このオプションでは次の列が追加されます。
.sp
ガベージ・コレクション・イベントを含むガベージ・コレクション統計データ。
.sp
\fBLGCC\fR: 最後のガベージ・コレクションの原因。
\fBLGCC\fR: 最後のガベージ・コレクションの原因
.sp
\fBGCC\fR: 現在のガベージ・コレクションの原因
\fBGCC\fR: 現在のガベージ・コレクションの原因
.RE
.PP
\-gcnew \fIoption\fR
......@@ -364,7 +373,7 @@ New
.RS 4
New世代領域サイズの統計データ。
.sp
NGCMN: New世代の最小容量(KB)。
\fBNGCMN\fR: New世代の最小容量(KB)。
.sp
\fBNGCMX\fR: New世代の最大容量(KB)。
.sp
......@@ -395,6 +404,10 @@ Old
.sp
\fBMU\fR: メタスペースの使用率(KB)。
.sp
\fBCCSC\fR: 圧縮されたクラス領域の容量(KB)。
.sp
\fBCCSU\fR: 使用されている圧縮されたクラス領域(KB)。
.sp
\fBOC\fR: Old領域の現在の容量(KB)。
.sp
\fBOU\fR: Old領域の使用率(KB)。
......@@ -439,6 +452,10 @@ Permanent
.sp
\fBMC\fR: メタスペースの容量(KB)。
.sp
\fBCCSMN\fR: 圧縮されたクラス領域の最小容量(KB)。
.sp
\fBCCSMX\fR: 圧縮されたクラス領域の最大容量(KB)。
.sp
\fBYGC\fR: 若い世代のGCイベント数。
.sp
\fBFGC\fR: フルGCイベント数。
......@@ -462,6 +479,8 @@ Permanent
.sp
\fBM\fR: メタスペースの使用率(領域の現在の容量に対するパーセンテージ)。
.sp
\fBCCS\fR: 圧縮されたクラス領域の使用率(パーセンテージ)。
.sp
\fBYGC\fR: 若い世代のGCイベント数。
.sp
\fBYGCT\fR: 若い世代のガベージ・コレクション時間。
......@@ -493,29 +512,28 @@ Java HotSpot VM
.PP
この例では、lvmid 21891に接続して、250ミリ秒間隔で7つのサンプルを取得し、\-\fBgcutil\fRオプションでの指定に従って出力を表示します。
.PP
この例の出力は、若い世代のコレクションが3番目と4番目のサンプル間で行われたことを示しています。コレクションには0\&.001秒かかっており、オブジェクトがEden領域(E)からOld領域(O)に昇格したため、Old領域の使用率は9\&.49%から9\&.51%に増加しています。Survivor領域は、コレクション前は12\&.44%が使用されていましたが、コレクション後の使用は7\&.74%のみです。
この例の出力は、若い世代のコレクションが3番目と4番目のサンプル間で行われたことを示しています。コレクションには0\&.078秒かかっており、オブジェクトがEden領域(E)からOld領域(O)に昇格したため、Old領域の使用率は66\&.80%から68\&.19%に増加しています。Survivor領域は、コレクション前は97\&.02%が使用されていましたが、コレクション後の使用は91\&.03%です。
.sp
.if n \{\
.RS 4
.\}
.nf
\fBjstat \-gcutil 21891 250 7\fR
\fB S0 S1 E O M YGC YGCT FGC FGCT GCT\fR
\fB0\&.00 99\&.74 13\&.49 7\&.86 95\&.82 3 0\&.124 0 0\&.000 0\&.124\fR
\fB0\&.00 99\&.74 13\&.49 7\&.86 95\&.82 3 0\&.124 0 0\&.000 0\&.124\fR
\fB0\&.00 99\&.74 13\&.49 7\&.86 95\&.82 3 0\&.124 0 0\&.000 0\&.124\fR
\fB0\&.00 99\&.74 13\&.49 7\&.86 95\&.82 3 0\&.124 0 0\&.000 0\&.124\fR
\fB0\&.00 99\&.74 13\&.80 7\&.86 95\&.82 3 0\&.124 0 0\&.000 0\&.124\fR
\fB0\&.00 99\&.74 13\&.80 7\&.86 95\&.82 3 0\&.124 0 0\&.000 0\&.124\fR
\fB0\&.00 99\&.74 13\&.80 7\&.86 95\&.82 3 0\&.124 0 0\&.000 0\&.124\fR
\fB S0 S1 E O M CCS YGC YGCT FGC FGCT GCT \fR
\fB 0\&.00 97\&.02 70\&.31 66\&.80 95\&.52 89\&.14 7 0\&.300 0 0\&.000 0\&.300\fR
\fB 0\&.00 97\&.02 86\&.23 66\&.80 95\&.52 89\&.14 7 0\&.300 0 0\&.000 0\&.300\fR
\fB 0\&.00 97\&.02 96\&.53 66\&.80 95\&.52 89\&.14 7 0\&.300 0 0\&.000 0\&.300\fR
\fB 91\&.03 0\&.00 1\&.98 68\&.19 95\&.89 91\&.24 8 0\&.378 0 0\&.000 0\&.378\fR
\fB 91\&.03 0\&.00 15\&.82 68\&.19 95\&.89 91\&.24 8 0\&.378 0 0\&.000 0\&.378\fR
\fB 91\&.03 0\&.00 17\&.80 68\&.19 95\&.89 91\&.24 8 0\&.378 0 0\&.000 0\&.378\fR
\fB 91\&.03 0\&.00 17\&.80 68\&.19 95\&.89 91\&.24 8 0\&.378 0 0\&.000 0\&.378\fR
.fi
.if n \{\
.RE
.\}
.SS "列ヘッダー文字列の繰返し"
.PP
この例では、lvmid 21891に接続して、250ミリ秒間隔でサンプルを取得し、\fB\-gcutil\fRオプションでの指定に従って出力を表示します。さらに、\fB\-h3\fRオプションを使用して、データが3行表示されるごとに列ヘッダーを出力します。
この例では、lvmid 21891に接続して、250ミリ秒間隔でサンプルを取得し、\fB\-gcnew\fRオプションでの指定に従って出力を表示します。さらに、\fB\-h3\fRオプションを使用して、データが3行表示されるごとに列ヘッダーを出力します。
.PP
この例では、ヘッダー文字列の繰返しが表示されているほか、2番目と3番目のサンプル間でYoung GCが行われたことがわかります。この継続時間は0\&.001秒でした。このコレクションでは、Survivor領域0の使用率(S0U)が適切なSurvivorサイズ(DSS)を超過することになるアクティブ・データが検出されました。この結果、オブジェクトは、Old世代(この出力には非表示)へ昇格され、殿堂入りしきい値(TT)が、31から2へ降格されました。
.PP
......@@ -545,7 +563,7 @@ Java HotSpot VM
.PP
この例では、lvmid21891へ接続し、250ミリ秒間隔で3つのサンプルを取得しています。\fB\-t\fRオプションを使用して、最初の列にサンプルごとのタイムスタンプを表示しています。
.PP
Timestamp列には、ターゲットJVMの起動時からの経過時間が、秒単位でレポートされています。さらに、\fB\-gcoldcapacity\fR出力では、割当リクエストまたは昇格リクエストあるいはその両方を満たすためにヒープが拡張するたびに、Old世代の容量(OGC)とOld領域の容量(OC)とが増加していることがわかります。81番目のフル・ガベージ・コレクション(FGC)の後、Old世代の容量(OGC)は11,696 KBから13820 KBに増加しました。この世代(および領域)の最大容量は、60,544 KB (OGCMX)なので、まだ拡張できる余裕が残されています。
Timestamp列には、ターゲットJVMの起動時からの経過時間が、秒単位でレポートされています。さらに、\fB\-gcoldcapacity\fR出力では、割当リクエストまたは昇格リクエストあるいはその両方を満たすためにヒープが拡張するたびに、Old世代の容量(OGC)とOld領域の容量(OC)とが増加していることがわかります。81番目のフル・ガベージ・コレクション(FGC)の後、Old世代の容量(OGC)は11,696KBから13,820KBに増加しました。この世代(および領域)の最大容量は、60,544KB (OGCMX)なので、まだ拡張できる余裕が残されています。
.sp
.if n \{\
.RS 4
......@@ -564,7 +582,7 @@ Timestamp
.PP
この例は、\fB\-gcutil\fRオプションを使用して、remote\&.domainというシステム上のlvmid 40496に接続し、サンプルを秒単位で無期限に取得しています。
.PP
lvmidは、リモート・ホストの名前と結合されて、\fB40496@remote\&.domain\fRの\fIvmid\fRを構成しています。結果として、このvmidは、\fBrmi\fRプロトコルを使用して、リモート・ホスト上のデフォルトの\fBjstatd\fRサーバーと通信します。\fBjstatd\fRサーバーは、rmiregistryを使用して、デフォルトのrmiregistryポート(ポート1099)にバインドされた\fBremote\&.domain\fRに配置されます。
lvmidは、リモート・ホストの名前と結合されて、\fB40496@remote\&.domain\fRの\fIvmid\fRを構成しています。結果として、このvmidは、\fBrmi\fRプロトコルを使用して、リモート・ホスト上のデフォルトの\fBjstatd\fRサーバーと通信します。\fBjstatd\fRサーバーは、\fBrmiregistry\fRコマンドを使用して、\fBrmiregistry\fRコマンドのデフォルトのポート(ポート1099)にバインドされた\fBremote\&.domain\fRに配置されます。
.sp
.if n \{\
.RS 4
......
......@@ -27,7 +27,8 @@
.\" SectDesc: モニタリング・ツール
.\" Software: JDK 8
.\" Arch: 汎用
.\" Part Number: E54734-01
.\" Part Number: E58103-01
.\" Doc ID: JSSON
.\"
.if n .pl 99999
.TH "jstatd" "1" "2013年11月21日" "JDK 8" "モニタリング・ツール"
......
......@@ -27,7 +27,8 @@
.\" SectDesc: Javaトラブルシューティング、プロファイリング、モニタリングおよび管理ツール
.\" Software: JDK 8
.\" Arch: 汎用
.\" Part Number: E54734-01
.\" Part Number: E58103-01
.\" Doc ID: JSSON
.\"
.if n .pl 99999
.TH "jvisualvm" "1" "2013年11月21日" "JDK 8" "Javaトラブルシューティング、プロファイリング、モニタリン"
......@@ -51,7 +52,7 @@
.\" * MAIN CONTENT STARTS HERE *
.\" -----------------------------------------------------------------
.SH "名前"
jvisualvm \- Javaアプリケーションを視覚的にモニターし、トラブルシューティングとプロファイリングを行います。
jvisualvm \- Javaアプリケーションを視覚的にモニター、トラブルシュートおよびプロファイルします。
.SH "概要"
.sp
.if n \{\
......
此差异已折叠。
......@@ -27,7 +27,8 @@
.\" SectDesc: 国際化ツール
.\" Software: JDK 8
.\" Arch: 汎用
.\" Part Number: E54734-01
.\" Part Number: E58103-01
.\" Doc ID: JSSON
.\"
.if n .pl 99999
.TH "native2ascii" "1" "2013年11月21日" "JDK 8" "国際化ツール"
......
......@@ -27,7 +27,8 @@
.\" SectDesc: Java IDLおよびRMI-IIOPツール
.\" Software: JDK 8
.\" Arch: 汎用
.\" Part Number: E54734-01
.\" Part Number: E58103-01
.\" Doc ID: JSSON
.\"
.if n .pl 99999
.TH "orbd" "1" "2013年11月21日" "JDK 8" "Java IDLおよびRMI-IIOPツール"
......@@ -117,7 +118,7 @@ ORBD
.PP
\-serverPollingTime \fImilliseconds\fR
.RS 4
\fBservertool\fRを使用して登録された永続サーバーのヘルス状態をORBDがチェックする間隔を指定します。デフォルト値は1000ミリ秒です。\fBmilliseconds\fRに指定する値は、有効な正の整数にする必要があります。
\fBservertool\fRを使用して登録された永続サーバーが正常に動作していることをORBDが確認する間隔を指定します。デフォルト値は1000ミリ秒です。\fBmilliseconds\fRに指定する値は、有効な正の整数にする必要があります。
.RE
.PP
\-serverStartupDelay milliseconds
......
......@@ -27,7 +27,8 @@
.\" SectDesc: Javaデプロイメント・ツール
.\" Software: JDK 8
.\" Arch: 汎用
.\" Part Number: E54734-01
.\" Part Number: E58103-01
.\" Doc ID: JSSON
.\"
.if n .pl 99999
.TH "pack200" "1" "2013年11月21日" "JDK 8" "Javaデプロイメント・ツール"
......@@ -160,7 +161,7 @@ JAR
\-\-segment\-limit=\fIvalue\fR
.RS 4
この値は、各アーカイブ・セグメントの予想ターゲット・サイズ\fIN\fR
(バイト単位)です。単一の入力ファイルの必要サイズが\fIN\fRバイトを超えると、独立したセグメントが割り当てられます。特殊なケースとして、値が\fB\-1\fRの場合は、すべての入力ファイルを含む大きな単一のセグメントが生成され、値が0の場合は、クラスごとにセグメントが1つずつ生成されます。アーカイブ・セグメントが大きくなると、断片化が少なくなり圧縮率が高くなりますが、その処理には多くのメモリーが必要です。
(バイト単位)です。単一の入力ファイルの必要サイズが\fIN\fRバイトを超えると、固有のアーカイブ・セグメントが提供されます。特殊なケースとして、値が\fB\-1\fRの場合は、すべての入力ファイルを含む大きな単一のセグメントが生成され、値が0の場合は、クラスごとにセグメントが1つずつ生成されます。アーカイブ・セグメントが大きくなると、断片化が少なくなり圧縮率が高くなりますが、その処理には多くのメモリーが必要です。
.sp
各セグメントのサイズは、セグメントに変換されるそれぞれの入力ファイルのサイズのほか、その名前と他の送信されるプロパティのサイズを計算して推測されます。
.sp
......
......@@ -23,14 +23,15 @@
.\"
.\" Title: policytool
.\" Language: Japanese
.\" Date: 2013年11月21
.\" Date: 2015年3月3
.\" SectDesc: セキュリティ・ツール
.\" Software: JDK 8
.\" Arch: 汎用
.\" Part Number: E54734-01
.\" Part Number: E58103-01
.\" Doc ID: JSSON
.\"
.if n .pl 99999
.TH "policytool" "1" "2013年11月21日" "JDK 8" "セキュリティ・ツール"
.TH "policytool" "1" "2015年3月3日" "JDK 8" "セキュリティ・ツール"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
......@@ -95,7 +96,7 @@ policytool \-
.RS 4
.\}
.nf
\fBpolicytool\-file mypolicyfile\fR
\fBpolicytool \-file \fR\fB\fImypolicyfile\fR\fR
.fi
.if n \{\
......
......@@ -27,7 +27,8 @@
.\" SectDesc: Remote Method Invocation (RMI)ツール
.\" Software: JDK 8
.\" Arch: 汎用
.\" Part Number: E54734-01
.\" Part Number: E58103-01
.\" Doc ID: JSSON
.\"
.if n .pl 99999
.TH "rmic" "1" "2013年11月21日" "JDK 8" "Remote Method Invocation (RMI)"
......@@ -110,8 +111,8 @@ Java Remote Method Protocol (JRMP)
.PP
\-classpath path
.RS 4
\fBrmic\fRコマンドがクラスを探すためのパスを指定します。このオプションは、デフォルトや\fBCLASSPATH\fR環境変数設定をオーバーライドします。ディレクトリはコロンで分割します。パスの一般的な形式は\fB\&.;<your_path>\fRです。例:
\fB\&.;/usr/local/java/classes\fR
\fBrmic\fRコマンドがクラスを探すためのパスを指定します。このオプションは、デフォルトや\fBCLASSPATH\fR環境変数設定をオーバーライドします。ディレクトリはコロンで分割します。パスの一般的な形式は\fB\&.:<your_path>\fRです。例:
\fB\&.:/usr/local/java/classes\fR
.RE
.PP
\-d \fIdirectory\fR
......@@ -350,7 +351,7 @@ java(1)
.sp -1
.IP \(bu 2.3
.\}
Setting the Class Path
クラス・パスの設定
.RE
.br
'pl 8.5i
......
......@@ -27,7 +27,8 @@
.\" SectDesc: Remote Method Invocation (RMI)ツール
.\" Software: JDK 8
.\" Arch: 汎用
.\" Part Number: E54734-01
.\" Part Number: E58103-01
.\" Doc ID: JSSON
.\"
.if n .pl 99999
.TH "rmid" "1" "2013年11月21日" "JDK 8" "Remote Method Invocation (RMI)"
......@@ -103,9 +104,7 @@ rmid \-
.\}
.SH "必要に応じてRMIDを開始"
.PP
\fBrmid\fRをコマンド行から開始するには、\fBinetd\fR
(Oracle Solarisの場合)、または\fBxinetd\fR
(Linuxの場合)を構成して\fBrmid\fRを必要に応じて開始する方法もあります。
\fBrmid\fRをコマンド行から開始するには、\fBinetd\fR(Oracle Solarisの場合)、または\fBxinetd\fR(Linuxの場合)を構成して\fBrmid\fRを必要に応じて開始する方法もあります。
.PP
RMIDを開始すると、\fBSystem\&.inheritedChannel\fRメソッドを呼び出して、継承されたチャンネル(\fBinetd\fR/\fBxinetd\fRから継承)を取得しようとします。継承されたチャンネルがnullであるか、\fBjava\&.nio\&.channels\&.ServerSocketChannel\fRのインスタンスでなかった場合、RMIDはそのチャンネルは\fBinetd\fR/\fBxinetd\fRによって起動されたものではないと判断し、前述のように起動します。
.PP
......@@ -368,7 +367,7 @@ java(1)
.sp -1
.IP \(bu 2.3
.\}
Setting the Class Path
クラス・パスの設定
.RE
.br
'pl 8.5i
......
......@@ -27,7 +27,8 @@
.\" SectDesc: Remote Method Invocation (RMI)ツール
.\" Software: JDK 8
.\" Arch: 汎用
.\" Part Number: E54734-01
.\" Part Number: E58103-01
.\" Doc ID: JSSON
.\"
.if n .pl 99999
.TH "rmiregistry" "1" "2013年11月21日" "JDK 8" "Remote Method Invocation (RMI)"
......
......@@ -27,7 +27,8 @@
.\" SectDesc: Java Webサービス・ツール
.\" Software: JDK 8
.\" Arch: 汎用
.\" Part Number: E54734-01
.\" Part Number: E58103-01
.\" Doc ID: JSSON
.\"
.if n .pl 99999
.TH "schemagen" "1" "2013年11月21日" "JDK 8" "Java Webサービス・ツール"
......
......@@ -27,7 +27,8 @@
.\" SectDesc: Remote Method Invocation (RMI)ツール
.\" Software: JDK 8
.\" Arch: 汎用
.\" Part Number: E54734-01
.\" Part Number: E58103-01
.\" Doc ID: JSSON
.\"
.if n .pl 99999
.TH "serialver" "1" "2013年11月21日" "JDK 8" "Remote Method Invocation (RMI)"
......
......@@ -27,7 +27,8 @@
.\" SectDesc: Java IDLおよびRMI-IIOPツール
.\" Software: JDK 8
.\" Arch: 汎用
.\" Part Number: E54734-01
.\" Part Number: E58103-01
.\" Doc ID: JSSON
.\"
.if n .pl 99999
.TH "servertool" "1" "2013年11月21日" "JDK 8" "Java IDLおよびRMI-IIOPツール"
......
......@@ -27,7 +27,8 @@
.\" SectDesc: Java IDLおよびRMI-IIOPツール
.\" Software: JDK 8
.\" Arch: 汎用
.\" Part Number: E54734-01
.\" Part Number: E58103-01
.\" Doc ID: JSSON
.\"
.if n .pl 99999
.TH "tnameserv" "1" "2013年11月21日" "JDK 8" "Java IDLおよびRMI-IIOPツール"
......@@ -189,7 +190,7 @@ Java Virtual Machine
.SH "例"
.SS "ネームスペースへのオブジェクトの追加"
.PP
次の例では、ネームスペースに名前を追加する方法を示します。このサンプル・プログラムは、このままの状態で完全に動作する一時ネーム・サービス・クライアントで、次のような単純なツリーを作成するものです。
次の例では、ネームスペースに名前を追加する方法を示します。このサンプル・プログラムは、自己完結型の一時ネーム・サービス・クライアントで、次のような単純なツリーを作成するものです。
.sp
.if n \{\
.RS 4
......
......@@ -27,7 +27,8 @@
.\" SectDesc: Javaデプロイメント・ツール
.\" Software: JDK 8
.\" Arch: 汎用
.\" Part Number: E54734-01
.\" Part Number: E58103-01
.\" Doc ID: JSSON
.\"
.if n .pl 99999
.TH "unpack200" "1" "2013年11月21日" "JDK 8" "Javaデプロイメント・ツール"
......
......@@ -27,7 +27,8 @@
.\" SectDesc: Java Webサービス・ツール
.\" Software: JDK 8
.\" Arch: 汎用
.\" Part Number: E54734-01
.\" Part Number: E58103-01
.\" Doc ID: JSSON
.\"
.if n .pl 99999
.TH "wsgen" "1" "2013年11月21日" "JDK 8" "Java Webサービス・ツール"
......
......@@ -27,7 +27,8 @@
.\" SectDesc: Java Webサービス・ツール
.\" Software: JDK 8
.\" Arch: 汎用
.\" Part Number: E54734-01
.\" Part Number: E58103-01
.\" Doc ID: JSSON
.\"
.if n .pl 99999
.TH "wsimport" "1" "2013年11月21日" "JDK 8" "Java Webサービス・ツール"
......
......@@ -27,7 +27,8 @@
.\" SectDesc: Java Webサービス・ツール
.\" Software: JDK 8
.\" Arch: 汎用
.\" Part Number: E54734-01
.\" Part Number: E58103-01
.\" Doc ID: JSSON
.\"
.if n .pl 99999
.TH "xjc" "1" "2013年11月21日" "JDK 8" "Java Webサービス・ツール"
......@@ -129,7 +130,7 @@ Using the XJC with Ant
.PP
\-p \fIpkg\fR
.RS 4
このコマンド行オプションでターゲット・パッケージを指定した場合、パッケージ名に対するすべてのバインディング・カスタマイズや、仕様で規定されているデフォルトのパッケージ名アルゴリズムよりも優先されます。
このコマンド行オプションでターゲット・パッケージを指定した場合、その指定内容は、パッケージ名に対するすべてのバインディング・カスタマイズや、仕様で規定されているデフォルトのパッケージ名アルゴリズムよりも優先されます。
.RE
.PP
\-httpproxy \fIproxy\fR
......
......@@ -1280,12 +1280,12 @@ public class AquaFileChooserUI extends FileChooserUI {
filters = (FileFilter[]) e.getNewValue();
fireContentsChanged(this, -1, -1);
} else if (prop == JFileChooser.FILE_FILTER_CHANGED_PROPERTY) {
fireContentsChanged(this, -1, -1);
setSelectedItem(e.getNewValue());
}
}
public void setSelectedItem(Object filter) {
if(filter != null) {
if (filter != null && !containsFileFilter(filter)) {
getFileChooser().setFileFilter((FileFilter) filter);
fireContentsChanged(this, -1, -1);
}
......@@ -1333,6 +1333,10 @@ public class AquaFileChooserUI extends FileChooserUI {
}
}
private boolean containsFileFilter(Object fileFilter) {
return Objects.equals(fileFilter, getFileChooser().getFileFilter());
}
/**
* Acts when FilterComboBox has changed the selected item.
*/
......@@ -1342,7 +1346,10 @@ public class AquaFileChooserUI extends FileChooserUI {
}
public void actionPerformed(final ActionEvent e) {
getFileChooser().setFileFilter((FileFilter)filterComboBox.getSelectedItem());
Object selectedFilter = filterComboBox.getSelectedItem();
if (!containsFileFilter(selectedFilter)) {
getFileChooser().setFileFilter((FileFilter) selectedFilter);
}
}
}
......
......@@ -104,6 +104,67 @@ static AWTWindow* lastKeyWindow = nil;
@implementation AWTWindow_Normal
AWT_NS_WINDOW_IMPLEMENTATION
// Gesture support
- (void)postGesture:(NSEvent *)event as:(jint)type a:(jdouble)a b:(jdouble)b {
AWT_ASSERT_APPKIT_THREAD;
JNIEnv *env = [ThreadUtilities getJNIEnv];
jobject platformWindow = [((AWTWindow *)self.delegate).javaPlatformWindow jObjectWithEnv:env];
if (platformWindow != NULL) {
// extract the target AWT Window object out of the CPlatformWindow
static JNF_MEMBER_CACHE(jf_target, jc_CPlatformWindow, "target", "Ljava/awt/Window;");
jobject awtWindow = JNFGetObjectField(env, platformWindow, jf_target);
if (awtWindow != NULL) {
// translate the point into Java coordinates
NSPoint loc = [event locationInWindow];
loc.y = [self frame].size.height - loc.y;
// send up to the GestureHandler to recursively dispatch on the AWT event thread
static JNF_CLASS_CACHE(jc_GestureHandler, "com/apple/eawt/event/GestureHandler");
static JNF_STATIC_MEMBER_CACHE(sjm_handleGestureFromNative, jc_GestureHandler, "handleGestureFromNative", "(Ljava/awt/Window;IDDDD)V");
JNFCallStaticVoidMethod(env, sjm_handleGestureFromNative, awtWindow, type, (jdouble)loc.x, (jdouble)loc.y, (jdouble)a, (jdouble)b);
(*env)->DeleteLocalRef(env, awtWindow);
}
(*env)->DeleteLocalRef(env, platformWindow);
}
}
- (void)beginGestureWithEvent:(NSEvent *)event {
[self postGesture:event
as:com_apple_eawt_event_GestureHandler_PHASE
a:-1.0
b:0.0];
}
- (void)endGestureWithEvent:(NSEvent *)event {
[self postGesture:event
as:com_apple_eawt_event_GestureHandler_PHASE
a:1.0
b:0.0];
}
- (void)magnifyWithEvent:(NSEvent *)event {
[self postGesture:event
as:com_apple_eawt_event_GestureHandler_MAGNIFY
a:[event magnification]
b:0.0];
}
- (void)rotateWithEvent:(NSEvent *)event {
[self postGesture:event
as:com_apple_eawt_event_GestureHandler_ROTATE
a:[event rotation]
b:0.0];
}
- (void)swipeWithEvent:(NSEvent *)event {
[self postGesture:event
as:com_apple_eawt_event_GestureHandler_SWIPE
a:[event deltaX]
b:[event deltaY]];
}
@end
@implementation AWTWindow_Panel
AWT_NS_WINDOW_IMPLEMENTATION
......@@ -399,67 +460,6 @@ AWT_ASSERT_APPKIT_THREAD;
}
// Gesture support
- (void)postGesture:(NSEvent *)event as:(jint)type a:(jdouble)a b:(jdouble)b {
AWT_ASSERT_APPKIT_THREAD;
JNIEnv *env = [ThreadUtilities getJNIEnv];
jobject platformWindow = [self.javaPlatformWindow jObjectWithEnv:env];
if (platformWindow != NULL) {
// extract the target AWT Window object out of the CPlatformWindow
static JNF_MEMBER_CACHE(jf_target, jc_CPlatformWindow, "target", "Ljava/awt/Window;");
jobject awtWindow = JNFGetObjectField(env, platformWindow, jf_target);
if (awtWindow != NULL) {
// translate the point into Java coordinates
NSPoint loc = [event locationInWindow];
loc.y = [self.nsWindow frame].size.height - loc.y;
// send up to the GestureHandler to recursively dispatch on the AWT event thread
static JNF_CLASS_CACHE(jc_GestureHandler, "com/apple/eawt/event/GestureHandler");
static JNF_STATIC_MEMBER_CACHE(sjm_handleGestureFromNative, jc_GestureHandler, "handleGestureFromNative", "(Ljava/awt/Window;IDDDD)V");
JNFCallStaticVoidMethod(env, sjm_handleGestureFromNative, awtWindow, type, (jdouble)loc.x, (jdouble)loc.y, (jdouble)a, (jdouble)b);
(*env)->DeleteLocalRef(env, awtWindow);
}
(*env)->DeleteLocalRef(env, platformWindow);
}
}
- (void)beginGestureWithEvent:(NSEvent *)event {
[self postGesture:event
as:com_apple_eawt_event_GestureHandler_PHASE
a:-1.0
b:0.0];
}
- (void)endGestureWithEvent:(NSEvent *)event {
[self postGesture:event
as:com_apple_eawt_event_GestureHandler_PHASE
a:1.0
b:0.0];
}
- (void)magnifyWithEvent:(NSEvent *)event {
[self postGesture:event
as:com_apple_eawt_event_GestureHandler_MAGNIFY
a:[event magnification]
b:0.0];
}
- (void)rotateWithEvent:(NSEvent *)event {
[self postGesture:event
as:com_apple_eawt_event_GestureHandler_ROTATE
a:[event rotation]
b:0.0];
}
- (void)swipeWithEvent:(NSEvent *)event {
[self postGesture:event
as:com_apple_eawt_event_GestureHandler_SWIPE
a:[event deltaX]
b:[event deltaY]];
}
// NSWindowDelegate methods
- (void) _deliverMoveResizeEvent {
......
......@@ -1285,7 +1285,7 @@ class GTKFileChooserUI extends SynthFileChooserUI {
/**
* Render different filters
*/
public class FilterComboBoxRenderer extends DefaultListCellRenderer implements UIResource {
public class FilterComboBoxRenderer extends DefaultListCellRenderer {
public String getName() {
// As SynthComboBoxRenderer's are asked for a size BEFORE they
// are parented getName is overriden to force the name to be
......
......@@ -111,7 +111,6 @@ public final class Connection implements Runnable {
private static final boolean debug = false;
private static final int dump = 0; // > 0 r, > 1 rw
public static final long DEFAULT_READ_TIMEOUT_MILLIS = 15 * 1000; // 15 second timeout;
final private Thread worker; // Initialized in constructor
......@@ -460,10 +459,13 @@ public final class Connection implements Runnable {
// will be woken up before readTimeout only if reply is
// available
ldr.wait(readTimeout);
waited = true;
} else {
ldr.wait(DEFAULT_READ_TIMEOUT_MILLIS);
// no timeout is set so we wait infinitely until
// a response is received
// http://docs.oracle.com/javase/8/docs/technotes/guides/jndi/jndi-ldap.html#PROP
ldr.wait();
}
waited = true;
} else {
break;
}
......
......@@ -293,6 +293,7 @@ public final class SplashScreen {
*/
public Graphics2D createGraphics() throws IllegalStateException {
synchronized (SplashScreen.class) {
checkVisible();
if (image==null) {
// get unscaled splash image size
Dimension dim = _getBounds(splashPtr).getSize();
......@@ -419,4 +420,4 @@ public final class SplashScreen {
private native static boolean _setImageData(long SplashPtr, byte[] data);
private native static float _getScaleFactor(long SplashPtr);
};
}
/*
* Copyright (c) 1996, 2006, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1996, 2014, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -44,7 +44,7 @@ import java.util.EventListener;
*
* @see KeyAdapter
* @see KeyEvent
* @see <a href="http://java.sun.com/docs/books/tutorial/post1.0/ui/keylistener.html">Tutorial: Writing a Key Listener</a>
* @see <a href="https://docs.oracle.com/javase/tutorial/uiswing/events/keylistener.html">Tutorial: Writing a Key Listener</a>
*
* @since 1.1
*/
......
......@@ -689,6 +689,8 @@ public final class Class<T> implements java.io.Serializable,
ClassLoader getClassLoader0() { return classLoader; }
// Initialized in JVM not by private constructor
// This field is filtered from reflection access, i.e. getDeclaredField
// will throw NoSuchFieldException
private final ClassLoader classLoader;
/**
......
......@@ -584,7 +584,10 @@ public final class System {
* <tr><td><code>java.compiler</code></td>
* <td>Name of JIT compiler to use</td></tr>
* <tr><td><code>java.ext.dirs</code></td>
* <td>Path of extension directory or directories</td></tr>
* <td>Path of extension directory or directories
* <b>Deprecated.</b> <i>This property, and the mechanism
* which implements it, may be removed in a future
* release.</i> </td></tr>
* <tr><td><code>os.name</code></td>
* <td>Operating system name</td></tr>
* <tr><td><code>os.arch</code></td>
......
......@@ -125,7 +125,7 @@ class LambdaForm {
MemberName vmentry; // low-level behavior, or null if not yet prepared
private boolean isCompiled;
Object transformCache; // managed by LambdaFormEditor
volatile Object transformCache; // managed by LambdaFormEditor
public static final int VOID_RESULT = -1, LAST_RESULT = -2;
......
......@@ -46,19 +46,16 @@ final class LambdaFormBuffer {
private static final int F_TRANS = 0x10, F_OWNED = 0x03;
LambdaFormBuffer(LambdaForm lf) {
this(lf.arity, lf.names, lf.result);
this.arity = lf.arity;
setNames(lf.names);
int result = lf.result;
if (result == LAST_RESULT) result = length - 1;
if (result >= 0 && lf.names[result].type != V_TYPE)
resultName = lf.names[result];
debugName = lf.debugName;
assert(lf.nameRefsAreLegal());
}
private LambdaFormBuffer(int arity, Name[] names, int result) {
this.arity = arity;
setNames(names);
if (result == LAST_RESULT) result = length - 1;
if (result >= 0 && names[result].type != V_TYPE)
resultName = names[result];
}
private LambdaForm lambdaForm() {
assert(!inTrans()); // need endEdit call to tidy things up
return new LambdaForm(debugName, arity, nameArray(), resultIndex());
......
......@@ -25,6 +25,7 @@
package java.lang.invoke;
import java.lang.ref.SoftReference;
import java.util.Arrays;
import static java.lang.invoke.LambdaForm.*;
import static java.lang.invoke.LambdaForm.BasicType.*;
......@@ -58,10 +59,9 @@ class LambdaFormEditor {
* The sequence is unterminated, ending with an indefinite number of zero bytes.
* Sequences that are simple (short enough and with small enough values) pack into a 64-bit long.
*/
private static final class Transform {
private static final class Transform extends SoftReference<LambdaForm> {
final long packedBytes;
final byte[] fullBytes;
final LambdaForm result; // result of transform, or null, if there is none available
private enum Kind {
NO_KIND, // necessary because ordinal must be greater than zero
......@@ -140,9 +140,9 @@ class LambdaFormEditor {
Kind kind() { return Kind.values()[byteAt(0)]; }
private Transform(long packedBytes, byte[] fullBytes, LambdaForm result) {
super(result);
this.packedBytes = packedBytes;
this.fullBytes = fullBytes;
this.result = result;
}
private Transform(long packedBytes) {
this(packedBytes, null, null);
......@@ -243,6 +243,7 @@ class LambdaFormEditor {
buf.append("unpacked");
buf.append(Arrays.toString(fullBytes));
}
LambdaForm result = get();
if (result != null) {
buf.append(" result=");
buf.append(result);
......@@ -253,7 +254,7 @@ class LambdaFormEditor {
/** Find a previously cached transform equivalent to the given one, and return its result. */
private LambdaForm getInCache(Transform key) {
assert(key.result == null);
assert(key.get() == null);
// The transformCache is one of null, Transform, Transform[], or ConcurrentHashMap.
Object c = lambdaForm.transformCache;
Transform k = null;
......@@ -276,7 +277,7 @@ class LambdaFormEditor {
}
}
assert(k == null || key.equals(k));
return k == null ? null : k.result;
return (k != null) ? k.get() : null;
}
/** Arbitrary but reasonable limits on Transform[] size for cache. */
......@@ -293,7 +294,17 @@ class LambdaFormEditor {
@SuppressWarnings("unchecked")
ConcurrentHashMap<Transform,Transform> m = (ConcurrentHashMap<Transform,Transform>) c;
Transform k = m.putIfAbsent(key, key);
return k != null ? k.result : form;
if (k == null) return form;
LambdaForm result = k.get();
if (result != null) {
return result;
} else {
if (m.replace(key, k, key)) {
return form;
} else {
continue;
}
}
}
assert(pass == 0);
synchronized (lambdaForm) {
......@@ -308,17 +319,27 @@ class LambdaFormEditor {
if (c instanceof Transform) {
Transform k = (Transform)c;
if (k.equals(key)) {
return k.result;
LambdaForm result = k.get();
if (result == null) {
lambdaForm.transformCache = key;
return form;
} else {
return result;
}
} else if (k.get() == null) { // overwrite stale entry
lambdaForm.transformCache = key;
return form;
}
// expand one-element cache to small array
ta = new Transform[MIN_CACHE_ARRAY_SIZE];
ta[0] = k;
lambdaForm.transformCache = c = ta;
lambdaForm.transformCache = ta;
} else {
// it is already expanded
ta = (Transform[])c;
}
int len = ta.length;
int stale = -1;
int i;
for (i = 0; i < len; i++) {
Transform k = ta[i];
......@@ -326,10 +347,18 @@ class LambdaFormEditor {
break;
}
if (k.equals(key)) {
return k.result;
LambdaForm result = k.get();
if (result == null) {
ta[i] = key;
return form;
} else {
return result;
}
} else if (stale < 0 && k.get() == null) {
stale = i; // remember 1st stale entry index
}
}
if (i < len) {
if (i < len || stale >= 0) {
// just fall through to cache update
} else if (len < MAX_CACHE_ARRAY_SIZE) {
len = Math.min(len * 2, MAX_CACHE_ARRAY_SIZE);
......@@ -344,7 +373,8 @@ class LambdaFormEditor {
// The second iteration will update for this query, concurrently.
continue;
}
ta[i] = key;
int idx = (stale >= 0) ? stale : i;
ta[idx] = key;
return form;
}
}
......
......@@ -2029,7 +2029,7 @@ return invoker;
MethodType oldType = target.type();
if (oldType == newType) return target;
if (oldType.explicitCastEquivalentToAsType(newType)) {
return target.asType(newType);
return target.asFixedArity().asType(newType);
}
return MethodHandleImpl.makePairwiseConvert(target, newType, false);
}
......
......@@ -26,9 +26,8 @@
package java.lang.invoke;
import sun.invoke.util.Wrapper;
import java.lang.ref.SoftReference;
import static java.lang.invoke.MethodHandleStatics.*;
import static java.lang.invoke.MethodHandleNatives.Constants.*;
import static java.lang.invoke.MethodHandles.Lookup.IMPL_LOOKUP;
/**
* Shared information for a group of method types, which differ
......@@ -51,7 +50,7 @@ final class MethodTypeForm {
final MethodType basicType; // the canonical erasure, with primitives simplified
// Cached adapter information:
@Stable final MethodHandle[] methodHandles;
@Stable final SoftReference<MethodHandle>[] methodHandles;
// Indexes into methodHandles:
static final int
MH_BASIC_INV = 0, // cached instance of MH.invokeBasic
......@@ -60,7 +59,7 @@ final class MethodTypeForm {
MH_LIMIT = 3;
// Cached lambda form information, for basic types only:
final @Stable LambdaForm[] lambdaForms;
final @Stable SoftReference<LambdaForm>[] lambdaForms;
// Indexes into lambdaForms:
static final int
LF_INVVIRTUAL = 0, // DMH invokeVirtual
......@@ -108,26 +107,40 @@ final class MethodTypeForm {
public MethodHandle cachedMethodHandle(int which) {
assert(assertIsBasicType());
return methodHandles[which];
SoftReference<MethodHandle> entry = methodHandles[which];
return (entry != null) ? entry.get() : null;
}
synchronized public MethodHandle setCachedMethodHandle(int which, MethodHandle mh) {
// Simulate a CAS, to avoid racy duplication of results.
MethodHandle prev = methodHandles[which];
if (prev != null) return prev;
return methodHandles[which] = mh;
SoftReference<MethodHandle> entry = methodHandles[which];
if (entry != null) {
MethodHandle prev = entry.get();
if (prev != null) {
return prev;
}
}
methodHandles[which] = new SoftReference<>(mh);
return mh;
}
public LambdaForm cachedLambdaForm(int which) {
assert(assertIsBasicType());
return lambdaForms[which];
SoftReference<LambdaForm> entry = lambdaForms[which];
return (entry != null) ? entry.get() : null;
}
synchronized public LambdaForm setCachedLambdaForm(int which, LambdaForm form) {
// Simulate a CAS, to avoid racy duplication of results.
LambdaForm prev = lambdaForms[which];
if (prev != null) return prev;
return lambdaForms[which] = form;
SoftReference<LambdaForm> entry = lambdaForms[which];
if (entry != null) {
LambdaForm prev = entry.get();
if (prev != null) {
return prev;
}
}
lambdaForms[which] = new SoftReference<>(form);
return form;
}
/**
......@@ -135,6 +148,7 @@ final class MethodTypeForm {
* This MTF will stand for that type and all un-erased variations.
* Eagerly compute some basic properties of the type, common to all variations.
*/
@SuppressWarnings({"rawtypes", "unchecked"})
protected MethodTypeForm(MethodType erasedType) {
this.erasedType = erasedType;
......@@ -234,8 +248,8 @@ final class MethodTypeForm {
// Initialize caches, but only for basic types
assert(basicType == erasedType);
this.lambdaForms = new LambdaForm[LF_LIMIT];
this.methodHandles = new MethodHandle[MH_LIMIT];
this.lambdaForms = new SoftReference[LF_LIMIT];
this.methodHandles = new SoftReference[MH_LIMIT];
}
private static long pack(int a, int b, int c, int d) {
......@@ -409,5 +423,4 @@ final class MethodTypeForm {
public String toString() {
return "Form"+erasedType;
}
}
......@@ -140,13 +140,6 @@ public class AccessibleObject implements AnnotatedElement {
throw new SecurityException("Cannot make a java.lang.Class" +
" constructor accessible");
}
} else if (obj instanceof Field && flag == true) {
Field f = (Field)obj;
if (f.getDeclaringClass() == Class.class &&
f.getName().equals("classLoader")) {
throw new SecurityException("Cannot make java.lang.Class.classLoader" +
" accessible");
}
}
obj.override = flag;
}
......
......@@ -25,7 +25,6 @@
package java.util;
import java.net.NetworkInterface;
import java.util.concurrent.atomic.AtomicLong;
import java.util.function.IntConsumer;
import java.util.function.LongConsumer;
......@@ -140,11 +139,10 @@ public final class SplittableRandom {
* other cases, this split must be performed in a thread-safe
* manner, so we use an AtomicLong to represent the seed rather
* than use an explicit SplittableRandom. To bootstrap the
* defaultGen, we start off using a seed based on current time and
* network interface address unless the java.util.secureRandomSeed
* property is set. This serves as a slimmed-down (and insecure)
* variant of SecureRandom that also avoids stalls that may occur
* when using /dev/random.
* defaultGen, we start off using a seed based on current time
* unless the java.util.secureRandomSeed property is set. This
* serves as a slimmed-down (and insecure) variant of SecureRandom
* that also avoids stalls that may occur when using /dev/random.
*
* It is a relatively simple matter to apply the basic design here
* to use 128 bit seeds. However, emulating 128bit arithmetic and
......@@ -237,34 +235,7 @@ public final class SplittableRandom {
s = (s << 8) | ((long)(seedBytes[i]) & 0xffL);
return s;
}
long h = 0L;
try {
Enumeration<NetworkInterface> ifcs =
NetworkInterface.getNetworkInterfaces();
boolean retry = false; // retry once if getHardwareAddress is null
while (ifcs.hasMoreElements()) {
NetworkInterface ifc = ifcs.nextElement();
if (!ifc.isVirtual()) { // skip fake addresses
byte[] bs = ifc.getHardwareAddress();
if (bs != null) {
int n = bs.length;
int m = Math.min(n >>> 1, 4);
for (int i = 0; i < m; ++i)
h = (h << 16) ^ (bs[i] << 8) ^ bs[n-1-i];
if (m < 4)
h = (h << 8) ^ bs[n-1-m];
h = mix64(h);
break;
}
else if (!retry)
retry = true;
else
break;
}
}
} catch (Exception ignore) {
}
return (h ^ mix64(System.currentTimeMillis()) ^
return (mix64(System.currentTimeMillis()) ^
mix64(System.nanoTime()));
}
......
......@@ -36,8 +36,6 @@
package java.util.concurrent;
import java.io.ObjectStreamField;
import java.net.NetworkInterface;
import java.util.Enumeration;
import java.util.Random;
import java.util.Spliterator;
import java.util.concurrent.atomic.AtomicInteger;
......@@ -147,34 +145,7 @@ public class ThreadLocalRandom extends Random {
s = (s << 8) | ((long)(seedBytes[i]) & 0xffL);
return s;
}
long h = 0L;
try {
Enumeration<NetworkInterface> ifcs =
NetworkInterface.getNetworkInterfaces();
boolean retry = false; // retry once if getHardwareAddress is null
while (ifcs.hasMoreElements()) {
NetworkInterface ifc = ifcs.nextElement();
if (!ifc.isVirtual()) { // skip fake addresses
byte[] bs = ifc.getHardwareAddress();
if (bs != null) {
int n = bs.length;
int m = Math.min(n >>> 1, 4);
for (int i = 0; i < m; ++i)
h = (h << 16) ^ (bs[i] << 8) ^ bs[n-1-i];
if (m < 4)
h = (h << 8) ^ bs[n-1-m];
h = mix64(h);
break;
}
else if (!retry)
retry = true;
else
break;
}
}
} catch (Exception ignore) {
}
return (h ^ mix64(System.currentTimeMillis()) ^
return (mix64(System.currentTimeMillis()) ^
mix64(System.nanoTime()));
}
......
......@@ -550,8 +550,8 @@ public class Attributes implements Map<Object,Object>, Cloneable {
* <code>Name</code> object for <code>Class-Path</code>
* manifest attribute. Bundled extensions can use this attribute
* to find other JAR files containing needed classes.
* @see <a href="../../../../technotes/guides/extensions/spec.html#bundled">
* Extensions Specification</a>
* @see <a href="../../../../technotes/guides/jar/jar.html#classpath">
* JAR file specification</a>
*/
public static final Name CLASS_PATH = new Name("Class-Path");
......@@ -567,8 +567,8 @@ public class Attributes implements Map<Object,Object>, Cloneable {
/**
* <code>Name</code> object for <code>Sealed</code> manifest attribute
* used for sealing.
* @see <a href="../../../../technotes/guides/extensions/spec.html#sealing">
* Extension Sealing</a>
* @see <a href="../../../../technotes/guides/jar/jar.html#sealing">
* Package Sealing</a>
*/
public static final Name SEALED = new Name("Sealed");
......@@ -591,9 +591,12 @@ public class Attributes implements Map<Object,Object>, Cloneable {
/**
* <code>Name</code> object for <code>Extension-Name</code> manifest attribute
* used for declaring dependencies on installed extensions.
* @deprecated Extension mechanism will be removed in a future release.
* Use class path instead.
* @see <a href="../../../../technotes/guides/extensions/spec.html#dependency">
* Installed extension dependency</a>
*/
@Deprecated
public static final Name EXTENSION_INSTALLATION = new Name("Extension-Installation");
/**
......@@ -623,17 +626,23 @@ public class Attributes implements Map<Object,Object>, Cloneable {
/**
* <code>Name</code> object for <code>Implementation-Vendor-Id</code>
* manifest attribute used for package versioning.
* @see <a href="../../../../technotes/guides/versioning/spec/versioning2.html#wp90779">
* Java Product Versioning Specification</a>
* @deprecated Extension mechanism will be removed in a future release.
* Use class path instead.
* @see <a href="../../../../technotes/guides/extensions/versioning.html#applet">
* Optional Package Versioning</a>
*/
@Deprecated
public static final Name IMPLEMENTATION_VENDOR_ID = new Name("Implementation-Vendor-Id");
/**
* <code>Name</code> object for <code>Implementation-URL</code>
* manifest attribute used for package versioning.
* @see <a href="../../../../technotes/guides/versioning/spec/versioning2.html#wp90779">
* Java Product Versioning Specification</a>
* @deprecated Extension mechanism will be removed in a future release.
* Use class path instead.
* @see <a href="../../../../technotes/guides/extensions/versioning.html#applet">
* Optional Package Versioning</a>
*/
@Deprecated
public static final Name IMPLEMENTATION_URL = new Name("Implementation-URL");
/**
......
......@@ -502,11 +502,11 @@ public class LogManager {
JavaAWTAccess javaAwtAccess = SharedSecrets.getJavaAWTAccess();
if (sm != null && javaAwtAccess != null) {
// for each applet, it has its own LoggerContext isolated from others
synchronized (javaAwtAccess) {
// find the AppContext of the applet code
// will be null if we are in the main app context.
final Object ecx = javaAwtAccess.getAppletContext();
if (ecx != null) {
final Object ecx = javaAwtAccess.getAppletContext();
if (ecx != null) {
synchronized (javaAwtAccess) {
// find the AppContext of the applet code
// will be null if we are in the main app context.
if (contextsMap == null) {
contextsMap = new WeakHashMap<>();
}
......
......@@ -1308,8 +1308,8 @@ implements ItemSelectable,ListDataListener,ActionListener, Accessible {
*/
public void actionPerformed(ActionEvent e) {
ComboBoxEditor editor = getEditor();
if ((editor != null) && (e != null)
&& (editor.getEditorComponent() == e.getSource())) {
if ((editor != null) && (e != null) && (editor == e.getSource()
|| editor.getEditorComponent() == e.getSource())) {
setPopupVisible(false);
getModel().setSelectedItem(editor.getItem());
String oldCommand = getActionCommand();
......
......@@ -274,7 +274,7 @@ public abstract class DataTransferer {
* instead, null will be returned.
*/
public static synchronized DataTransferer getInstance() {
return ((SunToolkit) Toolkit.getDefaultToolkit()).getDataTransferer();
return ((ComponentFactory) Toolkit.getDefaultToolkit()).getDataTransferer();
}
/**
......
......@@ -80,7 +80,7 @@ public class MultiResolutionToolkitImage extends ToolkitImage implements MultiRe
}
synchronized (ObserverCache.INSTANCE) {
ImageObserver o = (ImageObserver) ObserverCache.INSTANCE.get(image);
ImageObserver o = (ImageObserver) ObserverCache.INSTANCE.get(observer);
if (o == null) {
......@@ -109,7 +109,7 @@ public class MultiResolutionToolkitImage extends ToolkitImage implements MultiRe
image, flags, x, y, width, height);
};
ObserverCache.INSTANCE.put(image, o);
ObserverCache.INSTANCE.put(observer, o);
}
return o;
}
......
......@@ -364,8 +364,53 @@ public class DrawImage implements DrawImagePipe
int sx1, int sy1, int sx2, int sy2,
Color bgColor)
{
final AffineTransform itx;
try {
itx = tx.createInverse();
} catch (final NoninvertibleTransformException ignored) {
// Non-invertible transform means no output
return;
}
/*
* Find the maximum bounds on the destination that will be
* affected by the transformed source. First, transform all
* four corners of the source and then min and max the resulting
* destination coordinates of the transformed corners.
* Note that tx already has the offset to sx1,sy1 accounted
* for so we use the box (0, 0, sx2-sx1, sy2-sy1) as the
* source coordinates.
*/
final double[] coords = new double[8];
/* corner: UL UR LL LR */
/* index: 0 1 2 3 4 5 6 7 */
/* coord: (0, 0), (w, 0), (0, h), (w, h) */
coords[2] = coords[6] = sx2 - sx1;
coords[5] = coords[7] = sy2 - sy1;
tx.transform(coords, 0, coords, 0, 4);
double ddx1, ddy1, ddx2, ddy2;
ddx1 = ddx2 = coords[0];
ddy1 = ddy2 = coords[1];
for (int i = 2; i < coords.length; i += 2) {
double d = coords[i];
if (ddx1 > d) ddx1 = d;
else if (ddx2 < d) ddx2 = d;
d = coords[i+1];
if (ddy1 > d) ddy1 = d;
else if (ddy2 < d) ddy2 = d;
}
Region clip = sg.getCompClip();
SurfaceData dstData = sg.surfaceData;
final int dx1 = Math.max((int) Math.floor(ddx1), clip.lox);
final int dy1 = Math.max((int) Math.floor(ddy1), clip.loy);
final int dx2 = Math.min((int) Math.ceil(ddx2), clip.hix);
final int dy2 = Math.min((int) Math.ceil(ddy2), clip.hiy);
if (dx2 <= dx1 || dy2 <= dy1) {
// empty destination means no output
return;
}
final SurfaceData dstData = sg.surfaceData;
SurfaceData srcData = dstData.getSourceSurfaceData(img,
SunGraphics2D.TRANSFORM_GENERIC,
sg.imageComp,
......@@ -429,56 +474,13 @@ public class DrawImage implements DrawImagePipe
// assert(helper != null);
}
AffineTransform itx;
try {
itx = tx.createInverse();
} catch (NoninvertibleTransformException e) {
// Non-invertible transform means no output
return;
}
/*
* Find the maximum bounds on the destination that will be
* affected by the transformed source. First, transform all
* four corners of the source and then min and max the resulting
* destination coordinates of the transformed corners.
* Note that tx already has the offset to sx1,sy1 accounted
* for so we use the box (0, 0, sx2-sx1, sy2-sy1) as the
* source coordinates.
*/
double coords[] = new double[8];
/* corner: UL UR LL LR */
/* index: 0 1 2 3 4 5 6 7 */
/* coord: (0, 0), (w, 0), (0, h), (w, h) */
coords[2] = coords[6] = sx2 - sx1;
coords[5] = coords[7] = sy2 - sy1;
tx.transform(coords, 0, coords, 0, 4);
double ddx1, ddy1, ddx2, ddy2;
ddx1 = ddx2 = coords[0];
ddy1 = ddy2 = coords[1];
for (int i = 2; i < coords.length; i += 2) {
double d = coords[i];
if (ddx1 > d) ddx1 = d;
else if (ddx2 < d) ddx2 = d;
d = coords[i+1];
if (ddy1 > d) ddy1 = d;
else if (ddy2 < d) ddy2 = d;
}
int dx1 = (int) Math.floor(ddx1);
int dy1 = (int) Math.floor(ddy1);
int dx2 = (int) Math.ceil(ddx2);
int dy2 = (int) Math.ceil(ddy2);
SurfaceType dstType = dstData.getSurfaceType();
MaskBlit maskblit;
Blit blit;
if (sg.compositeState <= SunGraphics2D.COMP_ALPHA) {
/* NOTE: We either have, or we can make,
* a MaskBlit for any alpha composite type
*/
maskblit = MaskBlit.getFromCache(SurfaceType.IntArgbPre,
sg.imageComp,
dstType);
MaskBlit maskblit = MaskBlit.getFromCache(SurfaceType.IntArgbPre,
sg.imageComp, dstType);
/* NOTE: We can only use the native TransformHelper
* func to go directly to the dest if both the helper
......@@ -496,27 +498,19 @@ public class DrawImage implements DrawImagePipe
null, 0, 0);
return;
}
blit = null;
} else {
/* NOTE: We either have, or we can make,
* a Blit for any composite type, even Custom
*/
maskblit = null;
blit = Blit.getFromCache(SurfaceType.IntArgbPre,
sg.imageComp,
dstType);
}
// We need to transform to a temp image and then copy
// just the pieces that are valid data to the dest.
BufferedImage tmpimg = new BufferedImage(dx2-dx1, dy2-dy1,
final int w = dx2 - dx1;
final int h = dy2 - dy1;
BufferedImage tmpimg = new BufferedImage(w, h,
BufferedImage.TYPE_INT_ARGB_PRE);
SurfaceData tmpData = SurfaceData.getPrimarySurfaceData(tmpimg);
SurfaceType tmpType = tmpData.getSurfaceType();
MaskBlit tmpmaskblit =
MaskBlit.getFromCache(SurfaceType.IntArgbPre,
CompositeType.SrcNoEa,
tmpType);
MaskBlit tmpmaskblit = MaskBlit.getFromCache(SurfaceType.IntArgbPre,
CompositeType.SrcNoEa,
tmpType);
/*
* The helper function fills a temporary edges buffer
* for us with the bounding coordinates of each scanline
......@@ -531,7 +525,7 @@ public class DrawImage implements DrawImagePipe
*
* edges thus has to be h*2+2 in length
*/
int edges[] = new int[(dy2-dy1)*2+2];
final int[] edges = new int[h * 2 + 2];
// It is important that edges[0]=edges[1]=0 when we call
// Transform in case it must return early and we would
// not want to render anything on an error condition.
......@@ -539,35 +533,17 @@ public class DrawImage implements DrawImagePipe
AlphaComposite.Src, null,
itx, interpType,
sx1, sy1, sx2, sy2,
0, 0, dx2-dx1, dy2-dy1,
0, 0, w, h,
edges, dx1, dy1);
/*
* Now copy the results, scanline by scanline, into the dest.
* The edges array helps us minimize the work.
final Region region = Region.getInstance(dx1, dy1, dx2, dy2, edges);
clip = clip.getIntersection(region);
/* NOTE: We either have, or we can make,
* a Blit for any composite type, even Custom
*/
int index = 2;
for (int y = edges[0]; y < edges[1]; y++) {
int relx1 = edges[index++];
int relx2 = edges[index++];
if (relx1 >= relx2) {
continue;
}
if (maskblit != null) {
maskblit.MaskBlit(tmpData, dstData,
sg.composite, clip,
relx1, y,
dx1+relx1, dy1+y,
relx2 - relx1, 1,
null, 0, 0);
} else {
blit.Blit(tmpData, dstData,
sg.composite, clip,
relx1, y,
dx1+relx1, dy1+y,
relx2 - relx1, 1);
}
}
final Blit blit = Blit.getFromCache(tmpType, sg.imageComp, dstType);
blit.Blit(tmpData, dstData, sg.composite, clip, 0, 0, dx1, dy1, w, h);
}
// Render an image using only integer translation
......
......@@ -30,6 +30,8 @@ import java.awt.Shape;
import java.awt.geom.AffineTransform;
import java.awt.geom.RectangularShape;
import sun.java2d.loops.TransformHelper;
/**
* This class encapsulates a definition of a two dimensional region which
* consists of a number of Y ranges each containing multiple X bands.
......@@ -160,6 +162,15 @@ public class Region {
this.hiy = hiy;
}
private Region(int lox, int loy, int hix, int hiy, int[] bands, int end) {
this.lox = lox;
this.loy = loy;
this.hix = hix;
this.hiy = hiy;
this.bands = bands;
this.endIndex = end;
}
/**
* Returns a Region object covering the pixels which would be
* touched by a fill or clip operation on a Graphics implementation
......@@ -255,6 +266,44 @@ public class Region {
}
}
/**
* Returns a Region object with a rectangle of interest specified by the
* indicated rectangular area in lox, loy, hix, hiy and edges array, which
* is located relative to the rectangular area. Edges array - 0,1 are y
* range, 2N,2N+1 are x ranges, 1 per y range.
*
* @see TransformHelper
*/
static Region getInstance(final int lox, final int loy, final int hix,
final int hiy, final int[] edges) {
final int y1 = edges[0];
final int y2 = edges[1];
if (hiy <= loy || hix <= lox || y2 <= y1) {
return EMPTY_REGION;
}
// rowsNum * (3 + 1 * 2)
final int[] bands = new int[(y2 - y1) * 5];
int end = 0;
int index = 2;
for (int y = y1; y < y2; ++y) {
final int spanlox = Math.max(clipAdd(lox, edges[index++]), lox);
final int spanhix = Math.min(clipAdd(lox, edges[index++]), hix);
if (spanlox < spanhix) {
final int spanloy = Math.max(clipAdd(loy, y), loy);
final int spanhiy = Math.min(clipAdd(spanloy, 1), hiy);
if (spanloy < spanhiy) {
bands[end++] = spanloy;
bands[end++] = spanhiy;
bands[end++] = 1; // 1 span per row
bands[end++] = spanlox;
bands[end++] = spanhix;
}
}
}
return end != 0 ? new Region(lox, loy, hix, hiy, bands, end)
: EMPTY_REGION;
}
/**
* Returns a Region object with a rectangle of interest specified
* by the indicated Rectangle object.
......
......@@ -46,6 +46,7 @@ public class Reflection {
map.put(Reflection.class,
new String[] {"fieldFilterMap", "methodFilterMap"});
map.put(System.class, new String[] {"security"});
map.put(Class.class, new String[] {"classLoader"});
fieldFilterMap = map;
methodFilterMap = new HashMap<>();
......
......@@ -674,6 +674,9 @@ OGLBlitLoops_Blit(JNIEnv *env,
viaTexture = JNI_TRUE;
break;
#endif
case OGLC_VENDOR_INTEL:
viaTexture = JNI_TRUE;
break;
default:
// just use the glDrawPixels() codepath
viaTexture = JNI_FALSE;
......
......@@ -917,8 +917,8 @@ OGLContext_GetExtensionInfo(JNIEnv *env, jint *caps)
vcap = OGLC_VENDOR_ATI;
} else if (strncmp(vendor, "NVIDIA", 6) == 0) {
vcap = OGLC_VENDOR_NVIDIA;
} else if (strncmp(vendor, "Sun", 3) == 0) {
vcap = OGLC_VENDOR_SUN;
} else if (strncmp(vendor, "Intel", 5) == 0) {
vcap = OGLC_VENDOR_INTEL;
}
// REMIND: new in 7 - check if needs fixing
*caps |= ((vcap & OGLC_VCAP_MASK) << OGLC_VCAP_OFFSET);
......
......@@ -152,7 +152,7 @@ typedef struct {
#define OGLC_VENDOR_OTHER 0
#define OGLC_VENDOR_ATI 1
#define OGLC_VENDOR_NVIDIA 2
#define OGLC_VENDOR_SUN 3
#define OGLC_VENDOR_INTEL 3
#define OGLC_VCAP_MASK 0x3
#define OGLC_VCAP_OFFSET 24
......
......@@ -102,11 +102,11 @@ public final class XToolkit extends UNIXToolkit implements Runnable {
static TreeMap winMap = new TreeMap();
static HashMap specialPeerMap = new HashMap();
static HashMap winToDispatcher = new HashMap();
private static long _display;
static UIDefaults uidefaults;
static X11GraphicsEnvironment localEnv;
static X11GraphicsDevice device;
static final X11GraphicsConfig config;
static final X11GraphicsEnvironment localEnv;
private static final X11GraphicsDevice device;
private static final X11GraphicsConfig config;
private static final long display;
static int awt_multiclick_time;
static boolean securityWarningEnabled;
......@@ -117,15 +117,16 @@ public final class XToolkit extends UNIXToolkit implements Runnable {
static {
initSecurityWarning();
if (GraphicsEnvironment.isHeadless()) {
localEnv = null;
device = null;
config = null;
display = 0;
} else {
localEnv = (X11GraphicsEnvironment) GraphicsEnvironment
.getLocalGraphicsEnvironment();
device = (X11GraphicsDevice) localEnv.getDefaultScreenDevice();
config = (X11GraphicsConfig) (device.getDefaultConfiguration());
if (device != null) {
_display = device.getDisplay();
}
config = (X11GraphicsConfig) device.getDefaultConfiguration();
display = device.getDisplay();
setupModifierMap();
initIDs();
setBackingStoreType();
......@@ -196,10 +197,18 @@ public final class XToolkit extends UNIXToolkit implements Runnable {
}
}
static Object displayLock = new Object();
/**
* Returns the X11 Display of the default screen device.
*
* @return X11 Display
* @throws AWTError thrown if local GraphicsEnvironment is null, which
* means we are in the headless environment
*/
public static long getDisplay() {
return _display;
if (localEnv == null) {
throw new AWTError("Local GraphicsEnvironment must not be null");
}
return display;
}
public static long getDefaultRootWindow() {
......
......@@ -27,7 +27,8 @@
.\" SectDesc: 基本ツール
.\" Software: JDK 8
.\" Arch: 汎用
.\" Part Number: E54734-01
.\" Part Number: E58103-01
.\" Doc ID: JSSON
.\"
.if n .pl 99999
.TH "appletviewer" "1" "2013年11月21日" "JDK 8" "基本ツール"
......
......@@ -27,7 +27,8 @@
.\" SectDesc: 基本ツール
.\" Software: JDK 8
.\" Arch: 汎用
.\" Part Number: E54734-01
.\" Part Number: E58103-01
.\" Doc ID: JSSON
.\"
.if n .pl 99999
.TH "extcheck" "1" "2013年11月21日" "JDK 8" "基本ツール"
......
......@@ -27,7 +27,8 @@
.\" SectDesc: Java IDLおよびRMI-IIOPツール
.\" Software: JDK 8
.\" Arch: 汎用
.\" Part Number: E54734-01
.\" Part Number: E58103-01
.\" Doc ID: JSSON
.\"
.if n .pl 99999
.TH "idlj" "1" "2013年11月21日" "JDK 8" "Java IDLおよびRMI-IIOPツール"
......
......@@ -27,7 +27,8 @@
.\" SectDesc: 基本ツール
.\" Software: JDK 8
.\" Arch: 汎用
.\" Part Number: E54734-01
.\" Part Number: E58103-01
.\" Doc ID: JSSON
.\"
.if n .pl 99999
.TH "jar" "1" "2013年11月21日" "JDK 8" "基本ツール"
......@@ -384,9 +385,7 @@ JAR
.\}
.SH "例"
.PP
\fB例 1\fR
.br
冗長な出力による現在のディレクトリからのすべてのファイルの追加
\fB例 1 \fR冗長な出力による現在のディレクトリからのすべてのファイルの追加
.RS 4
.sp
.if n \{\
......@@ -415,9 +414,7 @@ JAR
.\}
.RE
.PP
\fB例 2\fR
.br
サブディレクトリからのファイルの追加
\fB例 2 \fRサブディレクトリからのファイルの追加
.RS 4
.sp
.if n \{\
......@@ -449,9 +446,7 @@ JAR
.\}
.RE
.PP
\fB例 3\fR
.br
JARのコンテンツのリスト
\fB例 3 \fRJARのコンテンツのリスト
.RS 4
.sp
.if n \{\
......@@ -485,9 +480,7 @@ JAR
.\}
.RE
.PP
\fB例 4\fR
.br
索引の追加
\fB例 4 \fR索引の追加
.RS 4
株式取引のアプリケーションの相互依存クラスを、\fBmain\&.jar\fR、\fBbuy\&.jar\fRおよび\fBsell\&.jar\fRの3つのJARファイルに分割する場合、\fBi\fRオプションを使用します。\fBmain\&.jar\fRマニフェスト内の\fBClass\-Path\fR属性を指定する場合、\fBi\fRオプションを使用して、アプリケーションのクラス・ロードの速度を向上できます。
.sp
......
......@@ -27,7 +27,8 @@
.\" SectDesc: セキュリティ・ツール
.\" Software: JDK 8
.\" Arch: 汎用
.\" Part Number: E54734-01
.\" Part Number: E58103-01
.\" Doc ID: JSSON
.\"
.if n .pl 99999
.TH "jarsigner" "1" "2013年11月21日" "JDK 8" "セキュリティ・ツール"
......@@ -344,7 +345,7 @@ SHA256
.PP
これら2つのファイルのベース・ファイル名は、\fB\-sigFile\fRオプションの値から作成されます。たとえば、オプションが\fB\-sigFile MKSIGN\fRの場合、ファイルは\fBMKSIGN\&.SF\fRおよび\fBMKSIGN\&.DSA\fRという名前になります。
.PP
コマンド行で\fB\-sigfile\fRオプションを指定しなかった場合、\fB\&.SF\fRファイルと\fB\&.DSA\fRファイルのベース・ファイル名は、コマンド行で指定された別名の先頭の8文字をすべて大文字に変換したものになります。別名が8文字未満の場合は、別名がそのまま使用されます。別名に、署名ファイル名で使用できない文字が含まれている場合、ファイル名の作成時に、該当する文字が下線(_)文字に変換されます。有効な文字は、アルファベット、数字、下線およびハイフンです。
コマンド行で\fB\-sigfile\fRオプションを指定しなかった場合、\fB\&.SF\fRファイルと\fB\&.DSA\fRファイルのベース・ファイル名は、コマンド行で指定された別名の先頭の8文字をすべて大文字に変換したものになります。別名が8文字未満の場合は、別名がそのまま使用されます。別名に、署名ファイル名で使用できない文字が含まれている場合、ファイル名の作成時に、該当する文字がアンダースコア(_)文字に変換されます。有効な文字は、アルファベット、数字、アンダースコアおよびハイフンです。
.PP
署名ファイル
.PP
......@@ -521,7 +522,7 @@ JAR
.sp -1
.IP \(bu 2.3
.\}
イタリックまたは下線付きの項目(オプションの値)の実際の値は、指定する必要があります。
イタリックまたは下線付きの項目(オプションの値)の実際の値は、指定する必要があります。
.RE
.sp
.RS 4
......@@ -664,9 +665,9 @@ JAR
.RS 4
生成された\fB\&.SF\fRファイルおよび\fB\&.DSA\fRファイルに使用するベース・ファイル名を指定します。たとえば、ファイルが\fBDUKESIGN\fRの場合、生成される\fB\&.SF\fRおよび\fB\&.DSA\fRファイルは、\fBDUKESIGN\&.SF\fRおよび\fBDUKESIGN\&.DSA\fRという名前で、署名付きJARファイルの\fBMETA\-INF\fRディレクトリに格納されます。
.sp
ファイル内の文字は、セット\fBa\-zA\-Z0\-9_\-\fRから指定される必要があります。アルファベット、数字、下線およびハイフン文字のみを使用できます。\fB\&.SF\fRおよび\fB\&.DSA\fRのファイル名では、小文字はすべて大文字に変換されます。
ファイル内の文字は、セット\fBa\-zA\-Z0\-9_\-\fRから指定される必要があります。アルファベット、数字、アンダースコアおよびハイフン文字のみを使用できます。\fB\&.SF\fRおよび\fB\&.DSA\fRのファイル名では、小文字はすべて大文字に変換されます。
.sp
コマンド行で\fB\-sigfile\fRオプションを指定しなかった場合、\fB\&.SF\fRファイルと\fB\&.DSA\fRファイルのベース・ファイル名は、コマンド行で指定された別名の先頭の8文字をすべて大文字に変換したものになります。別名が8文字未満の場合は、別名がそのまま使用されます。別名に、署名ファイル名で無効な文字が含まれている場合、ファイル名を作成するために、該当する文字が下線(_)文字に変換されます。
コマンド行で\fB\-sigfile\fRオプションを指定しなかった場合、\fB\&.SF\fRファイルと\fB\&.DSA\fRファイルのベース・ファイル名は、コマンド行で指定された別名の先頭の8文字をすべて大文字に変換したものになります。別名が8文字未満の場合は、別名がそのまま使用されます。別名に、署名ファイル名で無効な文字が含まれている場合、ファイル名を作成するために、該当する文字がアンダースコア(_)文字に変換されます。
.RE
.PP
\-sigalg \fIalgorithm\fR
......@@ -1001,7 +1002,7 @@ noTimestamp
.RE
.\}
.PP
検証が成功すると、\fBjar verified\fRが表示されます。そうでない場合は、エラー・メッセージが表示されます。\fB\-verbose\fRオプションを使用すると、詳細情報を取得できます。\fBjarsigner\fRを\fB\-verbose\fRオプションとともに使用するサンプルを、次に示します。
検証が成功すると、\fBjar verified\fRが表示されます。有効でない場合は、エラー・メッセージが表示されます。\fB\-verbose\fRオプションを使用すると、詳細情報を取得できます。\fBjarsigner\fRを\fB\-verbose\fRオプションとともに使用するサンプルを、次に示します。
.sp
.if n \{\
.RS 4
......
......@@ -23,14 +23,15 @@
.\"
.\" Title: javac
.\" Language: Japanese
.\" Date: 2014年8月8
.\" Date: 2015年3月3
.\" SectDesc: 基本ツール
.\" Software: JDK 8
.\" Arch: 汎用
.\" Part Number: E54734-01
.\" Part Number: E58103-01
.\" Doc ID: JSSON
.\"
.if n .pl 99999
.TH "javac" "1" "2014年8月8日" "JDK 8" "基本ツール"
.TH "javac" "1" "2015年3月3日" "JDK 8" "基本ツール"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
......@@ -154,7 +155,7 @@ javac \- Java
.PP
\-cp \fIpath\fR or \-classpath \fIpath\fR
.RS 4
ユーザー・クラス・ファイル、および(オプションで)注釈プロセッサとソース・ファイルを検索する場所を指定します。このクラス・パスは\fBCLASSPATH\fR環境変数のユーザー・クラス・パスをオーバーライドします。\fBCLASSPATH\fR、\fB\-cp\fR、\fB\-classpath\fRのいずれも指定されていない場合、ユーザーの\fIクラス・パス\fRは、現在のディレクトリになります。Setting the Class Path を参照してください。
ユーザー・クラス・ファイル、および(オプションで)注釈プロセッサとソース・ファイルを検索する場所を指定します。このクラス・パスは\fBCLASSPATH\fR環境変数のユーザー・クラス・パスをオーバーライドします。\fBCLASSPATH\fR、\fB\-cp\fR、\fB\-classpath\fRのいずれも指定されていない場合、ユーザーの\fIクラス・パス\fRは、現在のディレクトリになります。クラス・パスの設定 を参照してください。
.sp
\fB\-sourcepath\fRオプションが指定されていない場合、ソース・ファイルもユーザー・クラス・パスから検索されます。
.sp
......@@ -1122,9 +1123,7 @@ varargs
.PP
\fBjavac\fRコマンドを実行するときに、各引数ファイルのパスと名前の先頭にアットマーク(@)文字を付けて渡します。\fBjavac\fRコマンドは、アットマーク(@)で始まる引数を見つけると、そのファイルの内容を展開して引数リストに挿入します。
.PP
\fB例 1\fR
.br
単一の引数ファイル
\fB例 1 \fR単一の引数ファイル
.RS 4
\fBargfile\fRという名前の単一の引数ファイルを使用して、すべての\fBjavac\fR引数を格納する場合は、次のように指定します。
.sp
......@@ -1141,9 +1140,7 @@ varargs
この引数ファイルには、例2で示されている両方のファイルの内容を入れることができます。
.RE
.PP
\fB例 2\fR
.br
2つの引数ファイル
\fB例 2 \fR2つの引数ファイル
.RS 4
\fBjavac\fRオプション用とソース・ファイル名用に、2つの引数ファイルを作成できます。次のリストには、行の継続文字はありません。
.sp
......@@ -1216,9 +1213,7 @@ varargs
.\}
.RE
.PP
\fB例 3\fR
.br
パスを使用した引数ファイル
\fB例 3 \fRパスを使用した引数ファイル
.RS 4
引数ファイルはパスを指定できますが、ファイル内のすべてのファイル名は、(\fBpath1\fRや\fBpath2\fRではなく)次のように現在の作業ディレクトリに相対的となります。
.sp
......@@ -1317,9 +1312,7 @@ varargs
名前が\fBcom\&.sun\&.tools\&.javac\fRで始まるパッケージ(\fBcom\&.sun\&.tools\&.javac\fRのサブパッケージ)で検出される他のすべてのクラスおよびメソッドは、完全に内部用であり、いつでも変更される可能性があります。
.SH "例"
.PP
\fB例 1\fR
.br
簡単なプログラムのコンパイル
\fB例 1 \fR簡単なプログラムのコンパイル
.RS 4
この例では、greetingsディレクトリで\fBHello\&.java\fRソース・ファイルをコンパイルする方法を示しています。\fBHello\&.java\fRで定義されたクラスは、\fBgreetings\&.Hello\fRと呼ばれます。greetingsディレクトリは、ソース・ファイルとクラス・ファイルの両方があるパッケージ・ディレクトリで、現在のディレクトリのすぐ下にあります。これにより、デフォルトのユーザー・クラス・パスを使用できるようになります。また、\fB\-d\fRオプションを使用して別の出力先ディレクトリを指定する必要もありません。
.sp
......@@ -1372,9 +1365,7 @@ greetings\&.Hello
.\}
.RE
.PP
\fB例 2\fR
.br
複数のソース・ファイルのコンパイル
\fB例 2 \fR複数のソース・ファイルのコンパイル
.RS 4
この例では、\fBgreetings\fRパッケージのソース・ファイル\fBAloha\&.java\fR、\fBGutenTag\&.java\fR、\fBHello\&.java\fRおよび\fBHi\&.java\fRをコンパイルします。
.sp
......@@ -1393,9 +1384,7 @@ greetings\&.Hello
.\}
.RE
.PP
\fB例 3\fR
.br
ユーザー・クラス・パスの指定
\fB例 3 \fRユーザー・クラス・パスの指定
.RS 4
前述の例のソース・ファイルのうち1つを変更した後に、そのファイルを再コンパイルします。
.sp
......@@ -1450,9 +1439,7 @@ greetings\&.Hello
.\}
.RE
.PP
\fB例 4\fR
.br
ソース・ファイルとクラス・ファイルの分離
\fB例 4 \fRソース・ファイルとクラス・ファイルの分離
.RS 4
次の例では、\fBjavac\fRを使用して、JVM 1\&.7上で実行するコードをコンパイルします。
.sp
......@@ -1486,9 +1473,7 @@ greetings\&.Hello
適切なバージョンのブートストラップ・クラスを指定しない場合、コンパイラは古い言語仕様(この例では、バージョン1\&.7のJavaプログラミング言語)を新しいブートストラップ・クラスと組み合せて使用します。その結果、存在しないメソッドへの参照が含まれていることがあるため、クラス・ファイルが古いプラットフォーム(この場合はJava SE 7)で動作しない可能性があります。
.RE
.PP
\fB例 5\fR
.br
クロス・コンパイル
\fB例 5 \fRクロス・コンパイル
.RS 4
この例では、\fBjavac\fRを使用して、JVM 1\&.7上で実行するコードをコンパイルします。
.sp
......@@ -1503,7 +1488,7 @@ greetings\&.Hello
.if n \{\
.RE
.\}
\fB \-source 1\&.7\fRオプションにより、OldCode\&.javaのコンパイルにはリリース1\&.7(または7)のJavaプログラミング言語が使用されます。\fB\-target 1\&.7\fRオプションにより、JVM 1\&.7と互換性のあるクラス・ファイルが生成されます。ほとんどの場合、\fB\-target\fRの値は\fB\-source\fRの値になります。この例では、\fB\-target\fRオプションは省略されます。
\fB \-source 1\&.7\fRオプションにより、OldCode\&.javaのコンパイルにはリリース1\&.7(または7)のJavaプログラミング言語が使用されます。\fB\-target 1\&.7\fRオプションにより、JVM 1\&.7と互換性のあるクラス・ファイルが生成されます。
.sp
\fB\-bootclasspath\fRオプションを使用して、適切なバージョンのブートストラップ・クラス(\fBrt\&.jar\fRライブラリ)を指定する必要があります。指定しない場合は、コンパイラによって次の警告が生成されます。
.sp
......
......@@ -27,7 +27,8 @@
.\" SectDesc: 基本ツール
.\" Software: JDK 8
.\" Arch: 汎用
.\" Part Number: E54734-01
.\" Part Number: E58103-01
.\" Doc ID: JSSON
.\"
.if n .pl 99999
.TH "javah" "1" "2013年11月21日" "JDK 8" "基本ツール"
......@@ -77,7 +78,7 @@ C
.PP
\fBjavah\fRコマンドは、ネイティブ・メソッドを実装するために必要なCヘッダーとソース・ファイルを生成します。作成されたヘッダーとソース・ファイルは、ネイティブ・ソース・コードからオブジェクトのインスタンス変数を参照するためにCプログラムによって使用されます。\fB\&.h\fRファイルは、対応するクラスと一致する配置を持つ\fBstruct\fR定義を含みます。\fBstruct\fRのフィールドは、クラスのインスタンス変数に対応します。
.PP
ヘッダー・ファイルとその中で宣言される構造体の名前はクラスの名前から派生します。\fBjavah\fRコマンドに渡されるクラスがパッケージの中にある場合、パッケージ名はヘッダー・ファイル名と構造体名の両方の先頭に付加されます。下線(_)が名前の区切り文字として使用されます。
ヘッダー・ファイルとその中で宣言される構造体の名前はクラスの名前から派生します。\fBjavah\fRコマンドに渡されるクラスがパッケージの中にある場合、パッケージ名はヘッダー・ファイル名と構造体名の両方の先頭に付加されます。アンダースコア(_)が名前の区切り文字として使用されます。
.PP
デフォルトでは\fBjavah\fRコマンドは、コマンド行にリストされる各クラスのヘッダー・ファイルを作成し、現在のディレクトリにファイルを置きます。ソース・ファイルを作成するには、\fB\-stubs\fRオプションを使用してください。1つのファイルの中に、リストされたすべてのクラスの結果を連結するには、\fB\-o\fRオプションを使用してください。
.PP
......
......@@ -27,7 +27,8 @@
.\" SectDesc: 基本ツール
.\" Software: JDK 8
.\" Arch: 汎用
.\" Part Number: E54734-01
.\" Part Number: E58103-01
.\" Doc ID: JSSON
.\"
.if n .pl 99999
.TH "javap" "1" "2014年8月8日" "JDK 8" "基本ツール"
......
......@@ -27,7 +27,8 @@
.\" SectDesc: トラブルシューティング・ツール
.\" Software: JDK 8
.\" Arch: 汎用
.\" Part Number: E54734-01
.\" Part Number: E58103-01
.\" Doc ID: JSSON
.\"
.if n .pl 99999
.TH "jcmd" "1" "2013年11月21日" "JDK 8" "トラブルシューティング・ツール"
......
......@@ -27,7 +27,8 @@
.\" SectDesc: Javaトラブルシューティング、プロファイリング、モニタリングおよび管理ツール
.\" Software: JDK 8
.\" Arch: 汎用
.\" Part Number: E54734-01
.\" Part Number: E58103-01
.\" Doc ID: JSSON
.\"
.if n .pl 99999
.TH "jconsole" "1" "2013年11月21日" "JDK 8" "Javaトラブルシューティング、プロファイリング、モニタリン"
......@@ -81,7 +82,7 @@ http://docs\&.oracle\&.com/javase/8/docs/api/javax/management/remote/JMXServiceU
.RE
.SH "説明"
.PP
\fBjconsole\fRコマンドは、ローカル・マシンまたはリモート・マシン上のJavaアプリケーションと仮想マシンをモニターおよび管理するグラフィカル・コンソール・ツールを起動します。
\fBjconsole\fRコマンドは、ローカル・マシンまたはリモート・マシン上のJavaアプリケーションと仮想マシンのモニターと管理を行うグラフィカル・コンソール・ツールを起動します。
.PP
Windows上では、\fBjconsole\fRコマンドはコンソール・ウィンドウと関連付けられていません。ただし、\fBjconsole\fRコマンドが失敗すると、エラー情報を示すダイアログ・ボックスが表示されます。
.SH "オプション"
......@@ -93,7 +94,7 @@ Windows
.PP
\-notile
.RS 4
最初ウィンドウをタイル表示しません(複数接続の場合)。
最初ウィンドウをタイル表示しません(複数接続の場合)。
.RE
.PP
\-pluginpath \fIplugins\fR
......
......@@ -27,7 +27,8 @@
.\" SectDesc: 基本ツール
.\" Software: JDK 8
.\" Arch: 汎用
.\" Part Number: E54734-01
.\" Part Number: E58103-01
.\" Doc ID: JSSON
.\"
.if n .pl 99999
.TH "jdb" "1" "2013年11月21日" "JDK 8" "基本ツール"
......@@ -318,7 +319,7 @@ Java HotSpot VM
.RS 4
JVMに\fBoption\fRを渡します。optionには、Javaアプリケーション起動ツールのリファレンス・ページに記載されているオプションを1つ指定します。たとえば、\fB\-J\-Xms48m\fRと指定すると、スタートアップ・メモリーは48MBに設定されます。java(1)を参照してください。
.RE
.SH "デバッグ対象のプロセスに転送されるオプション"
.SH "デバッガ・プロセスに転送されるオプション"
.PP
\-v \-verbose[:\fIclass\fR|gc|jni]
.RS 4
......
......@@ -27,7 +27,8 @@
.\" SectDesc: 基本ツール
.\" Software: JDK 8
.\" Arch: 汎用
.\" Part Number: E54734-01
.\" Part Number: E58103-01
.\" Doc ID: JSSON
.\"
.if n .pl 99999
.TH "jdeps" "1" "2013年11月21日" "JDK 8" "基本ツール"
......@@ -113,7 +114,7 @@ DOT
.RS 4
クラス・ファイルの検索場所を指定します。
.sp
Setting the Class Path も参照してください。
クラス・パスの設定 も参照してください。
.RE
.PP
\-p <\fIpkg name\fR>
......
......@@ -27,7 +27,8 @@
.\" SectDesc: トラブルシューティング・ツール
.\" Software: JDK 8
.\" Arch: 汎用
.\" Part Number: E54734-01
.\" Part Number: E58103-01
.\" Doc ID: JSSON
.\"
.if n .pl 99999
.TH "jhat" "1" "2013年11月21日" "JDK 8" "トラブルシューティング・ツール"
......
......@@ -27,7 +27,8 @@
.\" SectDesc: トラブルシューティング・ツール
.\" Software: JDK 8
.\" Arch: 汎用
.\" Part Number: E54734-01
.\" Part Number: E58103-01
.\" Doc ID: JSSON
.\"
.if n .pl 99999
.TH "jinfo" "1" "2013年11月21日" "JDK 8" "トラブルシューティング・ツール"
......@@ -115,7 +116,7 @@ jinfo \-
.RE
.SH "説明"
.PP
\fBjinfo\fRコマンドは、指定されたJavaプロセスやコア・ファイルまたはリモート・デバッグ・サーバーのJava構成情報を出力します。構成情報には、Javaシステム・プロパティとJava Virtual Machine (JVM)のコマンド行フラグが含まれています。指定されたプロセスが64ビットJVM上で実行されている場合、\fB\-J\-d64\fRオプションを指定する必要がある場合があります。次に例を示します。\fBjinfo\fR
\fBjinfo\fRコマンドは、指定されたJavaプロセスやコア・ファイルまたはリモート・デバッグ・サーバーのJava構成情報を出力します。構成情報には、Javaシステム・プロパティとJava仮想マシン(JVM)のコマンド行フラグが含まれています。指定されたプロセスが64ビットJVM上で実行されている場合、\fB\-J\-d64\fRオプションを指定する必要がある場合があります。次に例を示します。\fBjinfo\fR
\fB\-J\-d64 \-sysprops pid\fR。
.PP
このユーティリティはサポート対象外であり、将来のJDKのリリースでは利用できなくなる可能性があります。\fBdbgeng\&.dll\fRが存在していないWindowsシステムでは、Debugging Tools For Windowsをインストールしないとこれらのツールが正常に動作しません。\fBPATH\fR環境変数には、ターゲット・プロセスによって使用されるjvm\&.dllの場所、またはクラッシュ・ダンプ・ファイルが生成された場所が含まれるようにしてください。たとえば、\fBset PATH=%JDK_HOME%\ejre\ebin\eclient;%PATH%\fRです。
......
......@@ -23,14 +23,15 @@
.\"
.\" Title: jjs
.\" Language: Japanese
.\" Date: 2013年11月21
.\" Date: 2015年3月3
.\" SectDesc: 基本ツール
.\" Software: JDK 8
.\" Arch: 汎用
.\" Part Number: E54734-01
.\" Part Number: E58103-01
.\" Doc ID: JSSON
.\"
.if n .pl 99999
.TH "jjs" "1" "2013年11月21日" "JDK 8" "基本ツール"
.TH "jjs" "1" "2015年3月3日" "JDK 8" "基本ツール"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
......@@ -113,7 +114,7 @@ jjs \- Nashorn
.PP
\-cp \fIpath\fR
.br
\-\-classpath \fIpath\fR
\-classpath \fIpath\fR
.RS 4
サポートするクラスへのパスを指定します。複数のパスを設定するには、このオプションを繰り返すか、または各パスをコロン(:)で区切ります。
.RE
......@@ -221,6 +222,11 @@ jjs \- Nashorn
このオプションを繰り返し使用すると、複数の\fBjava\fRコマンド・オプションを渡すことができます。
.RE
.PP
\-\-language=[es5]
.RS 4
ECMAScript言語バージョンを指定します。デフォルトのバージョンはES5です。
.RE
.PP
\-\-lazy\-compilation
.RS 4
レイジー・コード生成戦略(つまり、スクリプト全体が一度にコンパイルされない)を有効にします。このオプションは試験的なものです。
......@@ -240,13 +246,17 @@ jjs \- Nashorn
.\}
.nf
\fB\-\-log=fields:finest,codegen:info\fR
.fi
.if n \{\
.RE
.\}
.RE
.PP
\-\-optimistic\-types=[true|false]
.RS 4
再コンパイルの最適化を解除してオプティミスティック・タイプ仮定を有効または無効にします。オプティミスティック・タイプを使用した実行によって最終的な速度が向上しますが、ウォームアップ時間が増える場合があります。
.RE
.PP
\-\-package=\fIname\fR
.RS 4
生成されたクラス・ファイルを追加するパッケージを指定します。
......@@ -323,7 +333,7 @@ jjs \- Nashorn
.br
\-timezone=\fIzone\fR
.RS 4
スクリプトの実行に対し指定したタイム・ゾーンを設定します。OSで設定されたタイム・ゾーンをオーバーライドし、\fBDate\fRオブジェクトで使用されます。
スクリプトの実行に対し指定したタイムゾーンを設定します。OSで設定されたタイムゾーンをオーバーライドし、\fBDate\fRオブジェクトで使用されます。
.RE
.PP
\-tcs=\fIparameter\fR
......@@ -366,9 +376,7 @@ Nashorn
.RE
.SH "例"
.PP
\fB例 1\fR
.br
Nashornを使用したスクリプトの実行
\fB例 1 \fRNashornを使用したスクリプトの実行
.RS 4
.sp
.if n \{\
......@@ -383,9 +391,7 @@ Nashorn
.\}
.RE
.PP
\fB例 2\fR
.br
対話型モードでのNashornの実行
\fB例 2 \fR対話型モードでのNashornの実行
.RS 4
.sp
.if n \{\
......@@ -404,9 +410,7 @@ Nashorn
.\}
.RE
.PP
\fB例 3\fR
.br
Nashornへの引数の渡し
\fB例 3 \fRNashornへの引数の渡し
.RS 4
.sp
.if n \{\
......
......@@ -27,7 +27,8 @@
.\" SectDesc: トラブルシューティング・ツール
.\" Software: JDK 8
.\" Arch: 汎用
.\" Part Number: E54734-01
.\" Part Number: E58103-01
.\" Doc ID: JSSON
.\"
.if n .pl 99999
.TH "jmap" "1" "2013年11月21日" "JDK 8" "トラブルシューティング・ツール"
......
......@@ -27,7 +27,8 @@
.\" SectDesc: モニタリング・ツール
.\" Software: JDK 8
.\" Arch: 汎用
.\" Part Number: E54734-01
.\" Part Number: E58103-01
.\" Doc ID: JSSON
.\"
.if n .pl 99999
.TH "jps" "1" "2013年11月21日" "JDK 8" "モニタリング・ツール"
......
......@@ -27,7 +27,8 @@
.\" SectDesc: スクリプティング・ツール
.\" Software: JDK 8
.\" Arch: 汎用
.\" Part Number: E54734-01
.\" Part Number: E58103-01
.\" Doc ID: JSSON
.\"
.if n .pl 99999
.TH "jrunscript" "1" "2013年11月21日" "JDK 8" "スクリプティング・ツール"
......@@ -86,7 +87,7 @@ jrunscript \-
\-cp \fIpath\fR
.RS 4
\fB\-classpath\fR
\fBpath\fRと同じです。
\fIpath\fRと同じです。
.RE
.PP
\-D\fIname\fR=\fIvalue\fR
......@@ -96,7 +97,7 @@ Java
.PP
\-J\fIflag\fR
.RS 4
\fBflag\fRを、\fBjrunscript\fRコマンドが実行されているJava Virtual Machineに直接渡します。
\fBflag\fRを、\fBjrunscript\fRコマンドが実行されているJava仮想マシンに直接渡します。
.RE
.PP
\-I \fIlanguage\fR
......
......@@ -27,7 +27,8 @@
.\" SectDesc: トラブルシューティング・ツール
.\" Software: JDK 8
.\" Arch: 汎用
.\" Part Number: E54734-01
.\" Part Number: E58103-01
.\" Doc ID: JSSON
.\"
.if n .pl 99999
.TH "jsadebugd" "1" "2013年11月21日" "JDK 8" "トラブルシューティング・ツール"
......@@ -95,7 +96,7 @@ jsadebugd \- Java
.RE
.SH "説明"
.PP
\fBjsadebugd\fRコマンドは、Javaプロセスまたはコア・ファイルに接続し、デバッグ・サーバーとして機能します。\fBjstack\fR、\fBjmap\fRおよび\fBjinfo\fRなどのリモート・クライアントは、Java Remote Method Invocation(RMI)を使用しているサーバーに接続できます。\fBjsadebugd\fRコマンドを起動する前に、\fBrmiregistry\fRコマンドでRMIレジストリを次のように起動します。\fI$JAVA_HOME\fRはJDKのインストール・ディレクトリです。
\fBjsadebugd\fRコマンドは、Javaプロセスまたはコア・ファイルに接続し、デバッグ・サーバーとして機能します。\fBjstack\fR、\fBjmap\fRおよび\fBjinfo\fRなどのリモート・クライアントは、Java Remote Method Invocation (RMI)を使用しているサーバーに接続できます。\fBjsadebugd\fRコマンドを起動する前に、\fBrmiregistry\fRコマンドでRMIレジストリを次のように起動します。\fI$JAVA_HOME\fRはJDKのインストール・ディレクトリです。
.sp
.if n \{\
.RS 4
......
......@@ -27,7 +27,8 @@
.\" SectDesc: トラブルシューティング・ツール
.\" Software: JDK 8
.\" Arch: 汎用
.\" Part Number: E54734-01
.\" Part Number: E58103-01
.\" Doc ID: JSSON
.\"
.if n .pl 99999
.TH "jstack" "1" "2013年11月21日" "JDK 8" "トラブルシューティング・ツール"
......@@ -115,7 +116,7 @@ jstack \- Java
.RE
.SH "説明"
.PP
\fBjstack\fRコマンドは、指定されたJavaプロセス、コア・ファイルまたはリモート・デバッグ・サーバーに対するJavaスレッドのJavaスタック・トレースを出力します。Javaフレームごとに、フルクラス名、メソッド名、バイトコード・インデックス(bci)、および行番号(利用可能な場合)が出力されます。\fB\-m\fRオプションを使用すると、\fBjstack\fRコマンドは、すべてのスレッドのJavaフレームとネイティブ・フレームの両方を、プログラム・カウンタ(PC)とともに出力します。ネイティブ・フレームごとに、PCに最も近いネイティブ・シンボル(利用可能な場合)が出力されます。C++分解名は分解解除されません。C++名を分解解除するには、このコマンドの出力を\fBc++filt\fRにパイプします。指定されたプロセスが64ビットJava Virtual Machine上で実行されている場合は、\fB\-J\-d64\fRオプションを指定する必要があります(例:
\fBjstack\fRコマンドは、指定されたJavaプロセス、コア・ファイルまたはリモート・デバッグ・サーバーに対するJavaスレッドのJavaスタック・トレースを出力します。Javaフレームごとに、フルクラス名、メソッド名、バイトコード・インデックス(bci)、および行番号(利用可能な場合)が出力されます。\fB\-m\fRオプションを使用すると、\fBjstack\fRコマンドは、すべてのスレッドのJavaフレームとネイティブ・フレームの両方を、プログラム・カウンタ(PC)とともに出力します。ネイティブ・フレームごとに、PCに最も近いネイティブ・シンボル(利用可能な場合)が出力されます。C++分解名は分解解除されません。C++名を分解解除するには、このコマンドの出力を\fBc++filt\fRにパイプします。指定されたプロセスが64ビットJava仮想マシン上で実行されている場合は、\fB\-J\-d64\fRオプションを指定する必要があります(例:
\fBjstack \-J\-d64 \-m pid\fR)。
.PP
\fB注意\fR
......
......@@ -27,7 +27,8 @@
.\" SectDesc: モニタリング・ツール
.\" Software: JDK 8
.\" Arch: 汎用
.\" Part Number: E54734-01
.\" Part Number: E58103-01
.\" Doc ID: JSSON
.\"
.if n .pl 99999
.TH "jstatd" "1" "2013年11月21日" "JDK 8" "モニタリング・ツール"
......
......@@ -27,7 +27,8 @@
.\" SectDesc: Javaトラブルシューティング、プロファイリング、モニタリングおよび管理ツール
.\" Software: JDK 8
.\" Arch: 汎用
.\" Part Number: E54734-01
.\" Part Number: E58103-01
.\" Doc ID: JSSON
.\"
.if n .pl 99999
.TH "jvisualvm" "1" "2013年11月21日" "JDK 8" "Javaトラブルシューティング、プロファイリング、モニタリン"
......@@ -51,7 +52,7 @@
.\" * MAIN CONTENT STARTS HERE *
.\" -----------------------------------------------------------------
.SH "名前"
jvisualvm \- Javaアプリケーションを視覚的にモニターし、トラブルシューティングとプロファイリングを行います。
jvisualvm \- Javaアプリケーションを視覚的にモニター、トラブルシュートおよびプロファイルします。
.SH "概要"
.sp
.if n \{\
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册