0N/A." Copyright (c) 2004, 2010, Oracle
and/or its affiliates. All rights reserved.
2403N/A." DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
0N/A." This code is free software; you can redistribute it
and/or modify it
0N/A." under the terms of the GNU General Public License version 2 only, as
0N/A." published by the Free Software Foundation.
0N/A." This code is distributed in the hope that it will be useful, but WITHOUT
0N/A." ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
0N/A." FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
0N/A." version 2 for more details (a copy is included in the LICENSE file that
0N/A." accompanied this code).
0N/A." You should have received a copy of the GNU General Public License version
0N/A." 2 along with this work; if not, write to the Free Software Foundation,
0N/A." Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
0N/A." Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
0N/A.TH pack200 1 "02 Jun 2010"
0N/Apack200 \- JAR パックツール
0N/A\f4pack200\fP\f2 [ \fP\f2options\fP ] \f2output\-file\fP \f2JAR\-file\fP
0N/Aオプションの指定順序に決まりはありません。コマンド行または properties ファイルに指定された最後のオプションが、それ以前に指定されたすべてのオプションより優先されます。
2451N/A\f2pack200\fP ツールは、Java \f2gzip\fP 圧縮プログラムを使用して、JAR ファイルを \f2pack200\fP 圧縮ファイルに変換する Java アプリケーションです。\f2pack200\fP ファイルは高圧縮のファイルで、帯域幅の節約やダウンロード時間の短縮や直接配備することができます。
2403N/A\f2pack200\fP ツールには、圧縮エンジンの設定や微調整を行うオプションが用意されています。
2790N/A\
f2myarchive.jar\fP ファイルをパックした後にアンパックすることにより、JAR ファイルを生成します。生成されたファイルは、\f2jarsigner(1)\fP ツールの入力ファイルとして使用できます。
\f2pack200\fP ファイルを生成します。このオプションを指定するときは、適切な圧縮ツールを使用する必要があります。 また、ターゲットシステムでは、対応する圧縮解除ツールを使用する必要があります。
\f4\-G \-\-strip\-debug\fP
出力からデバッグ用の属性を削除します。対象となる属性には、\f2SourceFile\fP、\f2LineNumberTable\fP、\f2LocalVariableTable\fP、および \f2LocalVariableTypeTable\fP などがあります。これらの属性を削除すれば、ダウンロードとインストールのサイズは小さくなりますが、デバッガの機能は制限されます。
\f4\-O \-\-no\-keep\-file\-order\fP
パックツールは、すべての要素を並べ替えて転送します。また、JAR ディレクトリ名を削除します。このため、ダウンロードのサイズは小さくなりますが、インデックスをはじめとする JAR ファイルの最適化機能は正常に動作しなくなることがあります。
\f4\-Svalue \-\-segment\-limit=\fP\f2value\fP
この値は、各アーカイブセグメントの予想ターゲットサイズ N (バイト単位) です。N バイト以上を必要とする単一の入力ファイルには、
独立したアーカイブセグメントが割り当てられます。たとえば、これは特殊な例ですが、値が \f2\-1\fP の場合、すべての入力ファイルを含む単一の巨大なセグメントが生成されます。 一方、値が \f20\fP の場合、クラスごとにセグメントが 1 つずつ生成されます。アーカイブセグメントのサイズが大きければ大きいほど断片化は起こりにくく、圧縮率も高くなります。しかし、こうしたセグメントを処理するためには、大量のメモリーが必要になります。
各セグメントのサイズは、セグメント内で転送される入力ファイルのサイズと、このファイルの名前のサイズ、およびその他の転送プロパティーによって予測されます。
デフォルトのサイズは \f21000000\fP (100 万バイト) です。これは、標準サイズの入力 JAR ファイルを単一セグメント内で転送できるサイズです。パックツールおよびアンパックツールのメモリー要件には制限が課されます。
この制限が課されていない 10M バイトの JAR パックファイルは通常、元の 10% 程度のサイズにパックされます。 しかし、パックツールでより大きな Java ヒープ (セグメントの制限の約 10 倍) を必要とする場合もあります。
\f4\-Evalue \-\-effort=\fP\f2value\fP
単一の 10 進数値を指定した場合、パックツールは、指定された圧縮率でアーカイブを圧縮します。レベル \f21\fP の場合、圧縮速度は速くても圧縮率はそれほど高くありません。 レベル \f29\fP の場合、圧縮速度は遅くても圧縮率は高くなります。特殊な値 \f20\fP を指定した場合は、元の JAR ファイルを圧縮なしで直接コピーします。JSR 200 標準では、すべてのアンパックツールはこの特殊な処理をアーカイブ全体のパススルーとして理解する必要があります。
デフォルト値は \f25\fP です。 この場合、標準的な時間で、適度な圧縮が行われます。
\f4\-Hvalue \-\-deflate\-hint=\fP\f2value\fP
デフォルト値を上書きし、入力情報を保持します。 転送されるアーカイブのサイズは大きくなります。可能な値:
どちらの場合でも、パックツールはデフレーションヒントを出力アーカイブに設定します。 アーカイブ要素の個々のデフレーションヒントは転送しません。
入力 JAR 内のデフレーションヒントを保持します (デフォルト)。
\f4\-mvalue \-\-modification\-time=\fP\f2value\fP
パックツールは、元のアーカイブの全エントリの最終更新時刻か、そのセグメントのすべてのエントリの最終更新時刻を特定しようとします。この単一の値はセグメントの一部として転送され、各セグメントの全エントリに適用されます。この場合、すべてのインストールファイルに単一の日付が設定されるという問題はありますが、アーカイブの転送サイズを少し小さくすることができます。
入力 JAR 内の更新時刻を保持します (デフォルト)。
\f4\-Pfile \-\-pass\-file=\fP\f2file\fP
ファイルを圧縮せず、バイト単位で転送するように指定します。このオプションを繰り返し使用して、複数のファイルを指定できます。パス名の変換は行われません。 システムファイルの区切り文字が JAR ファイルの区切り文字「\f2/\fP」で置き換えられるだけです。ファイル名は、JAR ファイル内の文字列と完全に一致していなければなりません。file にディレクトリ名を指定した場合、そのディレクトリ内のすべてのファイルが転送されます。
\f4\-Uaction \-\-unknown\-attribute=\fP\f2action\fP
デフォルトの動作を無効にします。 たとえば、不明な属性を含むクラスファイルを指定したアクションで転送します。アクションとして指定可能な値:
\f2pack200\fP の操作に失敗し、適切な解説が表示されます。
属性はドロップされます。注: VM 必須属性を削除すると、クラスローダーの障害が発生することがあります。
この属性が検出された場合、クラス全体が 1 つのリソースとして転送されます。
\f4\-Cattribute\-name=\fP\f2layout\fP \f3\-\-class\-attribute=\fP\f2attribute\-name=action\fP
\f4\-Fattribute\-name=\fP\f2layout\fP \f3\-\-field\-attribute=\fP\f2attribute\-name=action\fP
\f4\-Mattribute\-name=\fP\f2layout\fP \f3\-\-method\-attribute=\fP\f2attribute\-name=action\fP
\f4\-Dattribute\-name=\fP\f2layout\fP \f3\-\-code\-attribute=\fP\f2attribute\-name=action\fP
これら 4 つのオプションでは、クラスエンティティーに Class 属性、Field 属性、Method 属性、Code 属性などの属性のレイアウトを指定できます。attribute\-name には、これからレイアウトまたはアクションを定義する属性の名前を指定します。アクションとして指定可能な値:
レイアウト言語は、JSR 200 仕様に定義されています。
例: \f2\-\-class\-attribute=SourceFile=RUH\fP
この属性が検出された場合、pack200 の操作に失敗し、適切な解説が表示されます。
この属性が検出された場合、属性は出力から削除されます。注: VM 必須属性を削除すると、クラスローダーの障害が発生することがあります。
例: \f2\-\-class\-attribute=CompilationID=pass\fP というこの属性を含むクラスファイルを転送します。 パックツールは、その他のアクションを行いません。
コマンド行に、パックツールを初期化するための Java プロパティーが含まれている設定ファイルを指定できます。
\f2# Generic properties for the packer.\fP
\f2# This option will cause the files bearing new attributes to\fP
\f2# be reported as an error rather than passed uncompressed.\fP
\f2# Change the segment limit to be unlimited.\fP
最小限のメッセージを出力します。このオプションを複数指定すると、より長いメッセージが出力されます。
\f4\-lfilename \-\-log\-file=\fP\f2filename\fP
\f2pack200\fP によって呼び出される Java 起動ツールにオプションを渡します。たとえば、\f2\-J\-Xms48m\fP と指定すると、スタートアップメモリーは 48M バイトに設定されます。このオプションは \f2\-X\fP で始まっていませんが、\f2pack200\fP の標準オプションではありません。\f2\-J\fP を使って、Java で記述されたアプリケーションを実行する背後の VM にオプション渡すことは、よく行われています。
\f2「Java 配備ガイド \- Pack200」\fP @
jar(1) \- Java Archive ツール」
「jarsigner(1) \- JAR 署名および検証ツール」
\f2attributes(5)\fP のマニュアルページ
このコマンドと \f2pack(1)\fP を混同しないでください。これらは別製品です。
SDK に付属する Java SE API 仕様との相違が見つかった場合には、仕様を優先してください。