ほかのユーザーがソリューションを使用できるようにするには、またソリューションを環境内に簡単に配布するには、ソリューションを Java アーカイブ (JAR) ファイルにパッケージ化します。JAR ファイルの内容および内容を解釈するための命令は、JAR ファイルの最上位ディレクトリにある plugin-descriptor.xml ファイルに記述します。このファイルは署名することもできます。プラグイン記述子の構文は、2001 年 5 月 2 日付けの W3C 勧告 (http://www.w3.org/TR/2001/xmlschema-0-20010502/) に従った XML スキーマを使用して指定されています。このスキーマを妥当性検査パーサーとともに使用して、プラグインの構文の妥当性を検査できます。プラグイン記述子ファイルについては、「プラグインの定義」を参照してください。
JAR ファイルを作成するには、JAR ユーティリティーを使用します。JAR ユーティリティーで使用するオプションは、 UNIX の標準の tar ユーティリティーと似ています。
JAR ファイルを作成するには、すべてのプラグインファイルを含むルートディレクトリから次のコマンドを実行します。jar cf jarfile inputfiles
各オプションの意味は次のとおりです。
c オプションによって、jarfile という新しいアーカイブが作成されます。このアーカイブには、inputfiles で指定するファイルやディレクトリが格納されます。
f jarfile オプションでは、作成するファイルの名前を指定します。
inputfiles では、JAR ファイルに含めるファイルやディレクトリを指定します。ファイル名やディレクトリ名を空白で区切って指定するか、アスタリスク (*) 記号を使用して現在のディレクトリ内のすべてのファイルを指定できます。ディレクトリはすべて再帰的に処理されます。
サブディレクトリがある場合は、次のコマンド例のように 1 つの JAR ファイルに結合できます。
% jar cvf myplugin.jar * added manifest ignoring entry META-INF/ ignoring entry META-INF/MANIFEST.MF adding: components/(in = 0) (out= 0)(stored 0%) adding: components/com/(in = 0) (out= 0)(stored 0%) adding: components/com/sun/(in = 0) (out= 0)(stored 0%) adding: components/com/sun/myplugin/(in = 0) (out= 0)(stored 0%) adding: components/com/sun/myplugin/mycomponent.xml(in = 6224) (out= 1182)(deflated 81%) adding: components/com/sun/myplugin/myothercomponent.xml(in = 1291) (out= 507)(deflated 60%) adding: components/com/sun/myplugin/mycomponenttype.xml(in = 940) (out= 470)(deflated 50%) adding: resources/(in = 0) (out= 0)(stored 0%) adding: resources/com/(in = 0) (out= 0)(stored 0%) adding: resources/com/sun/(in = 0) (out= 0)(stored 0%) adding: resources/com/sun/solaris/(in = 0) (out= 0)(stored 0%) adding: resources/com/sun/solaris/zone_util.tar(in = 20480) (out= 4232)(deflated 79%) adding: gui/(in = 0) (out= 0)(stored 0%) adding: gui/pluginUI.xml(in = 861) (out= 407)(deflated 52%) adding: gui/solaris.gif(in = 1622) (out= 1627)(deflated 0%) adding: plugin-descriptor.xml(in = 1990) (out= 707)(deflated 64%) % |
JAR ファイル内のファイルを確認するには、次のコマンドを使用します。
% jar tf mypluin.jar META-INF/MANIFEST.MF fiji/ fiji/components/ fiji/components/com/ fiji/components/com/sun/ fiji/components/com/sun/solaris/ fiji/components/com/sun/solaris/N1GridContainer.xml fiji/components/com/sun/solaris/ZoneSS.xml fiji/components/com/sun/solaris/zone_util.tar.xml fiji/resources/ fiji/resources/com/ fiji/resources/com/sun/ fiji/resources/com/sun/solaris/ fiji/resources/com/sun/solaris/zone_util.tar gui/ gui/pluginUI.xml gui/solaris.gif plugin-descriptor.xml |