1 '\" t
   2 .\" Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved.
   3 .\" Title: pack200
   4 .\" Language: English
   5 .\" Date: 2013年11月21日
   6 .\" SectDesc: Javaデプロイメント・ツール
   7 .\" Software: JDK 8
   8 .\" Arch: 汎用
   9 .\"
  10 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  11 .\"
  12 .\" This code is free software; you can redistribute it and/or modify it
  13 .\" under the terms of the GNU General Public License version 2 only, as
  14 .\" published by the Free Software Foundation.
  15 .\"
  16 .\" This code is distributed in the hope that it will be useful, but WITHOUT
  17 .\" ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  18 .\" FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
  19 .\" version 2 for more details (a copy is included in the LICENSE file that
  20 .\" accompanied this code).
  21 .\"
  22 .\" You should have received a copy of the GNU General Public License version
  23 .\" 2 along with this work; if not, write to the Free Software Foundation,
  24 .\" Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  25 .\"
  26 .\" Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  27 .\" or visit www.oracle.com if you need additional information or have any
  28 .\" questions.
  29 .\"
  30 .pl 99999
  31 .TH "pack200" "1" "2013年11月21日" "JDK 8" "Javaデプロイメント・ツール"
  32 .\" -----------------------------------------------------------------
  33 .\" * Define some portability stuff
  34 .\" -----------------------------------------------------------------
  35 .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  36 .\" http://bugs.debian.org/507673
  37 .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
  38 .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  39 .ie \n(.g .ds Aq \(aq
  40 .el       .ds Aq '
  41 .\" -----------------------------------------------------------------
  42 .\" * set default formatting
  43 .\" -----------------------------------------------------------------
  44 .\" disable hyphenation
  45 .nh
  46 .\" disable justification (adjust text to left margin only)
  47 .ad l
  48 .\" -----------------------------------------------------------------
  49 .\" * MAIN CONTENT STARTS HERE *
  50 .\" -----------------------------------------------------------------
  51 .SH "NAME"
  52 pack200 \- WebデプロイメントのためにJARファイルをpack200圧縮ファイルにパッケージします。
  53 .SH "概要"
  54 .sp
  55 .if n \{\
  56 .RS 4
  57 .\}
  58 .nf
  59 \fIpack200\fR [\fIoptions\fR] \fIoutput\-file\fR \fIJAR\-file\fR
  60 .fi
  61 .if n \{\
  62 .RE
  63 .\}
  64 .PP
  65 オプションは任意の順序で指定できます。コマンドラインまたはpropertiesファイルに指定された最後のオプションが、それ以前に指定されたすべてのオプションより優先されます。
  66 .PP
  67 \fIoptions\fR
  68 .RS 4
  69 コマンドライン・オプション。オプションを参照してください。
  70 .RE
  71 .PP
  72 \fIoutput\-file\fR
  73 .RS 4
  74 出力ファイルの名前。
  75 .RE
  76 .PP
  77 \fIJAR\-file\fR
  78 .RS 4
  79 入力ファイルの名前。
  80 .RE
  81 .SH "説明"
  82 .PP
  83 \fIpack200\fRコマンドは、Java gzipコンプレッサを使用してJARファイルをpack200圧縮ファイルに変換するJavaアプリケーションです。pack200ファイルは高圧縮のファイルで、直接デプロイでき、帯域幅の節約やダウンロード時間の短縮が可能です。
  84 .PP
  85 \fIpack200\fRコマンドには、圧縮エンジンの設定や微調整を行うオプションがあります。一般的な使用方法を次の例に示します。\fImyarchive\&.pack\&.gz\fRがデフォルトの\fIpack200\fRコマンド設定で作成されます。
  86 .sp
  87 .if n \{\
  88 .RS 4
  89 .\}
  90 .nf
  91 pack200 myarchive\&.pack\&.gz myarchive\&.jar
  92 .fi
  93 .if n \{\
  94 .RE
  95 .\}
  96 .SH "オプション"
  97 .PP
  98 \-r, \-\-repack
  99 .RS 4
 100 JARファイルをパックした後アンパックして、JARファイルを生成します。生成されたファイルは\fIjarsigner\fR(1)ツールの入力ファイルとして使用できます。次の例では、myarchive\&.jarファイルをパックした後、アンパックします。
 101 .sp
 102 .if n \{\
 103 .RS 4
 104 .\}
 105 .nf
 106 pack200 \-\-repack myarchive\-packer\&.jar myarchive\&.jar
 107 pack200 \-\-repack myarchive\&.jar
 108 .fi
 109 .if n \{\
 110 .RE
 111 .\}
 112 次の例では、入力ファイル内のファイルの順序を保持します。
 113 .RE
 114 .PP
 115 \-g, \-\-no\-gzip
 116 .RS 4
 117 \fIpack200\fRファイルを生成します。このオプションを指定するときは、適切な圧縮ツールを使用する必要があります。また、ターゲット・システムでは、対応する圧縮解除ツールを使用する必要があります。
 118 .sp
 119 .if n \{\
 120 .RS 4
 121 .\}
 122 .nf
 123 pack200 \-\-no\-gzip myarchive\&.pack myarchive\&.jar
 124 .fi
 125 .if n \{\
 126 .RE
 127 .\}
 128 .RE
 129 .PP
 130 \-G, \-\-strip\-debug
 131 .RS 4
 132 出力からデバッグ属性を削除します。これには、\fISourceFile\fR、\fILineNumberTable\fR、\fILocalVariableTable\fR、\fILocalVariableTypeTable\fRが含まれます。これらの属性を削除すれば、ダウンロードとインストールのサイズは小さくなりますが、デバッガの機能は制限されます。
 133 .RE
 134 .PP
 135 \-\-keep\-file\-order
 136 .RS 4
 137 入力ファイル内のファイルの順序を保持します。これは、デフォルトの動作です。
 138 .RE
 139 .PP
 140 \-O, \-\-no\-keep\-file\-order
 141 .RS 4
 142 パック・ツールは、すべての要素を並べ替えて送信します。パック・ツールは、JARディレクトリ名を削除してダウンロード・サイズを削減することもできます。ただし、インデックスなど、特定のJARファイルの最適化機能が正常に動作しなくなることがあります。
 143 .RE
 144 .PP
 145 \-S\fIvalue\fR, \-\-segment\-limit=\fIvalue\fR
 146 .RS 4
 147 この値は、各アーカイブ・セグメントの予想ターゲット・サイズ\fIN\fR
 148 (バイト単位)です。単一の入力ファイルの必要サイズが\fIN\fRバイトを超えると、独立したセグメントが割り当てられます。特殊なケースとして、値が\fI\-1\fRの場合は、すべての入力ファイルを含む大きな単一のセグメントが生成され、値が0の場合は、クラスごとにセグメントが1つずつ生成されます。アーカイブ・セグメントが大きくなると、断片化が少なくなり圧縮率が高くなりますが、その処理には多くのメモリーが必要です。
 149 .sp
 150 各セグメントのサイズは、セグメントに変換されるそれぞれの入力ファイルのサイズのほか、その名前と他の送信されるプロパティのサイズを計算して推測されます。
 151 .sp
 152 デフォルトは\-1です。つまり、パック・ツールは単一のセグメント出力ファイルを作成します。極端に大きな出力ファイルが生成される場合には、入力ファイルをセグメント化(分割)してより小さなJARにすることを強くお薦めします。
 153 .sp
 154 この制限が課されていない10 MBのJARパック・ファイルは通常、約10%小さくパックされます。しかし、パック・ツールでより大きなJavaヒープ(セグメントの制限の約10倍)を必要とする場合もあります。
 155 .RE
 156 .PP
 157 \-E\fIvalue\fR, \-\-effort=\fIvalue\fR
 158 .RS 4
 159 単一の10進数値を指定した場合、パック・ツールは、指定された圧縮率でアーカイブを圧縮します。レベル1の場合は、比較的短い圧縮時間で多少大きめのファイルが生成されますが、レベル9の場合は、非常に長い時間がかかるものの、より圧縮率の高いファイルが生成されます。特殊な値0を指定した場合は、\fIpack200\fRコマンドは元のJARファイルを圧縮なしで直接コピーします。JSR 200標準では、すべての解凍プログラムが、この特別な場合をアーカイブ全体のパススルーと解釈するように規定しています。
 160 .sp
 161 デフォルトは5です。この場合、標準的な時間で適切な圧縮が行われます。
 162 .RE
 163 .PP
 164 \-H\fIvalue\fR, \-\-deflate\-hint=\fIvalue\fR
 165 .RS 4
 166 入力情報を保存するというデフォルト値をオーバーライドします。転送されるアーカイブのサイズは大きくなる場合があります。指定可能な値は、\fItrue\fR、\fIfalse\fRまたは\fIkeep\fRです。
 167 .sp
 168 \fIvalue\fRが\fItrue\fRまたはfalseの場合、\fIpacker200\fRコマンドは指定に従ってデフレーション・ヒントを出力アーカイブに設定します。アーカイブ要素の個々のデフレーション・ヒントは転送されません。
 169 .sp
 170 \fIkeep\fR値は、入力JARで確認されたデフレーション・ヒントを保持します。これがデフォルトです。
 171 .RE
 172 .PP
 173 \-m\fIvalue\fR, \-\-modification\-time=\fIvalue\fR
 174 .RS 4
 175 指定可能な値は\fIlatest\fRと\fIkeep\fRです。
 176 .sp
 177 値が最新の場合、パック・ツールは、元のアーカイブの使用可能なすべてのエントリのうちの最終更新時刻か、そのセグメントの使用可能なすべてのエントリの最終更新時刻を特定しようとします。この単一の値はセグメントの一部として転送され、各セグメントの全エントリに適用されます。この場合、すべてのインストール・ファイルに単一の日付が設定されるという問題はありますが、アーカイブの転送サイズを少し小さくすることができます。
 178 .sp
 179 値が\fIkeep\fRの場合、入力JARで確認された変更時間が保持されます。これがデフォルトです。
 180 .RE
 181 .PP
 182 \-P\fIfile\fR, \-\-pass\-file=\fIfile\fR
 183 .RS 4
 184 ファイルを圧縮せず、バイト単位で転送するように指定します。このオプションを繰返し使用して、複数のファイルを指定できます。システム・ファイル・セパレータがJARファイル・セパレータのスラッシュ(/)に置き換えられる点を除き、パス名の変換は行われません。結果として得られるファイル名は、文字列として正確にJARファイルでの出現と一致している必要があります。\fIfile\fRにディレクトリ名を指定した場合、そのディレクトリ内のすべてのファイルが転送されます。
 185 .RE
 186 .PP
 187 \-U\fIaction\fR, \-\-unknown\-attribute=\fIaction\fR
 188 .RS 4
 189 デフォルトの動作をオーバーライドします。つまり、不明な属性を含むクラス・ファイルが、指定した\fIaction\fRによって渡されます。アクションとして指定可能な値は、\fIerror\fR、\fIstrip\fRまたは\fIpass\fRです。
 190 .sp
 191 値が\fIerror\fRの場合、\fIpack200\fRコマンド操作全体が失敗して適切な説明が表示されます。
 192 .sp
 193 値が\fIstrip\fRの場合、属性は削除されます。Java仮想マシン(JVM)必須属性を削除すると、クラス・ローダーの障害が発生することがあります。
 194 .sp
 195 値が\fIpass\fRの場合、クラス全体が1つのリソースとして転送されます。
 196 .RE
 197 .PP
 198 \-C\fIattribute\-name\fR=\fIlayout\fR, \-\-class\-attribute=\fIattribute\-name\fR=\fIaction\fR
 199 .RS 4
 200 次のオプションを参照してください。
 201 .RE
 202 .PP
 203 \-F\fIattribute\-name\fR=\fIlayout\fR, \-\-field\-attribute=\fIattribute\-name\fR=\fIaction\fR
 204 .RS 4
 205 次のオプションを参照してください。
 206 .RE
 207 .PP
 208 \-M\fIattribute\-name\fR=\fIlayout\fR, \-\-method\-attribute=\fIattribute\-name\fR=\fIaction\fR
 209 .RS 4
 210 次のオプションを参照してください。
 211 .RE
 212 .PP
 213 \-D\fIattribute\-name\fR=\fIlayout\fR, \-\-code\-attribute=\fIattribute\-name\fR=\fIaction\fR
 214 .RS 4
 215 前述の4つのオプションでは、クラス・エンティティに\fIclass\-attribute\fR、\fIfield\-attribute\fR、\fImethod\-attribute\fRおよび\fIcode\-attribute\fRなどの属性のレイアウトを指定できます。\fIattribute\-name\fRには、これからレイアウトまたはアクションを定義する属性の名前を指定します。\fIaction\fRとして指定可能な値は、\fIsome\-layout\-string\fR、\fIerror\fR、\fIstrip\fR、\fIpass\fRです。
 216 .sp
 217 \fIsome\-layout\-string\fR: レイアウト言語はJSR 200仕様で定義されています。例:
 218 \fI\-\-class\-attribute=SourceFile=RUH\fR。
 219 .sp
 220 値が\fIerror\fRの場合、\fIpack200\fR操作が失敗して説明が表示されます。
 221 .sp
 222 値が\fIstrip\fRの場合、属性が出力から削除されます。VM必須属性を削除するとクラス・ローダーの障害が発生することがあります。たとえば、\fI\-\-class\-attribute=CompilationID=pass\fRというこの属性を含むクラス・ファイルを転送します。パック・ツールは、その他のアクションを行いません。
 223 .sp
 224 値が\fIpass\fRの場合、クラス全体が1つのリソースとして転送されます。
 225 .RE
 226 .PP
 227 \-f \fIpack\&.properties\fR, \-\-config\-file=\fIpack\&.properties\fR
 228 .RS 4
 229 コマンドラインに、パック・ツールを初期化するためのJavaプロパティが含まれている構成ファイルを指定できます。
 230 .sp
 231 .if n \{\
 232 .RS 4
 233 .\}
 234 .nf
 235 pack200 \-f pack\&.properties myarchive\&.pack\&.gz myarchive\&.jar
 236 more pack\&.properties
 237 # Generic properties for the packer\&.
 238 modification\&.time=latest
 239 deflate\&.hint=false
 240 keep\&.file\&.order=false
 241 # This option will cause the files bearing new attributes to
 242 # be reported as an error rather than passed uncompressed\&.
 243 unknown\&.attribute=error
 244 # Change the segment limit to be unlimited\&.
 245 segment\&.limit=\-1
 246 .fi
 247 .if n \{\
 248 .RE
 249 .\}
 250 .RE
 251 .PP
 252 \-v, \-\-verbose
 253 .RS 4
 254 最小限のメッセージを出力します。このオプションを複数指定すると、より長いメッセージが作成されます。
 255 .RE
 256 .PP
 257 \-q, \-\-quiet
 258 .RS 4
 259 メッセージを表示せずに動作するように指定します。
 260 .RE
 261 .PP
 262 \-l\fIfilename\fR, \-\-log\-file=\fIfilename\fR
 263 .RS 4
 264 出力メッセージのログ・ファイルを指定します。
 265 .RE
 266 .PP
 267 \-?, \-h, \-\-help
 268 .RS 4
 269 このコマンドに関するヘルプ情報を出力します。
 270 .RE
 271 .PP
 272 \-V, \-\-version
 273 .RS 4
 274 このコマンドに関するバージョン情報を出力します。
 275 .RE
 276 .PP
 277 \-J\fIoption\fR
 278 .RS 4
 279 指定されたオプションをJava仮想マシンに渡します。詳細は、java(1)コマンドのリファレンス・ページを参照してください。たとえば、\fI\-J\-Xms48m\fRと指定すると、スタートアップ・メモリーは48MBに設定されます。
 280 .RE
 281 .SH "終了ステータス"
 282 .PP
 283 次の終了値が返されます: 正常終了の場合は0、エラーが発生した場合は0より大きい値。
 284 .SH "注意"
 285 .PP
 286 このコマンドと\fIpack\fR(1)を混同しないでください。\fIpack\fRおよび\fIpack200\fRコマンドは、別々の製品です。
 287 .PP
 288 JDKに付属するJava SE API仕様との相違が見つかった場合には、仕様を優先してください。
 289 .SH "関連項目"
 290 .sp
 291 .RS 4
 292 .ie n \{\
 293 \h'-04'\(bu\h'+03'\c
 294 .\}
 295 .el \{\
 296 .sp -1
 297 .IP \(bu 2.3
 298 .\}
 299 unpack200(1)
 300 .RE
 301 .sp
 302 .RS 4
 303 .ie n \{\
 304 \h'-04'\(bu\h'+03'\c
 305 .\}
 306 .el \{\
 307 .sp -1
 308 .IP \(bu 2.3
 309 .\}
 310 jar(1)
 311 .RE
 312 .sp
 313 .RS 4
 314 .ie n \{\
 315 \h'-04'\(bu\h'+03'\c
 316 .\}
 317 .el \{\
 318 .sp -1
 319 .IP \(bu 2.3
 320 .\}
 321 jarsigner(1)
 322 .RE
 323 .br
 324 'pl 8.5i
 325 'bp