Top > Extensions > Packaging
*拡張機能パッケージの作成 [#v3f0048e]

この拡張機能パッケージは実際の機能以外にライセンス表示やオンラインアップデートといった拡張機能をサポートするさまざまな設定が利用できます。

oxt パッケージは OpenOffice.org 2.0.4 からサポートされました。

#contents
**パッケージの概要と構成 [#d0971aa6]

拡張機能パッケージ (oxt ファイル) の正体は ZIP アーカイブです。
//汎用的なフォーマット、必要な機能を備えているとして選択されたようです。これは OpenOffice.org のドキュメントファイルが同じように zip アーカイブであるために同じように取り扱えるといった点からも利便性があります。また、作成も容易です。

一般的な拡張機能ファイルの構成を見てみます。一つの拡張機能ファイルに多くの機能を詰め込んでいる例です。注: ファイルを ZIP アーカイブにまとめるとき、ファイル群が一番上の階層にくるようにしてください (そうしないと認識されません)。

&ref(package-1.png,nolink);

これらのうちパッケージの情報を含むファイルは二つしかありません。description.xml および manifest.xml ファイルです。この二つのファイルは配置する場所が決められていて拡張機能マネージャが見つけると処理してくれます。

そのほかは機能、ヘルプ、ライブラリ、メニュー設定、アイコン、構成設定に使われます。
**パッケージに特化したファイル [#ze6d23b5]

拡張機能としてのファイルではなく拡張機能パッケージのためのファイルは次の二つです。

-MIME-TYPE/manifest.xml
--パッケージに含まれるファイルの種類を指定
-description.xml
--パッケージに関する情報などを指定

拡張機能マネージャが拡張機能パッケージを扱うとき、処理が必要なファイルは manifest.xml に種類を記載しておきます。構成ファイルやコンポーネント、ライブラリといったものは指定しなければいけませんが、ヘルプファイルやアイコン画像などは指定しなくてもかまいません。

manifest.xml の例を見てみます。manifest:file-entry の各項目で指定するのはパッケージ内でのファイルパスとファイルの種類です。

 <?xml version="1.0" encoding="UTF-8"?>
 <manifest:manifest>
  <manifest:file-entry manifest:full-path="MRILib/" 
    manifest:media-type="application/vnd.sun.star.basic-library"/>
  <manifest:file-entry manifest:full-path="descriptions/readme.ja" 
    manifest:media-type="application/vnd.sun.star.package-bundle-description;locale=ja"/>
  <manifest:file-entry manifest:full-path="Addons.xcu" 
    manifest:media-type="application/vnd.sun.star.configuration-data"/>
 </manifest:manifest>

一つ目は manifest:full-path="MRILib/" に配置した OOo Basic のライブラリです。ライブラリはディレクトリを指定します。

二つ目は拡張機能マネージャでパッケージ名に表示されるツールチップの内容を記述したファイルを指定しています。

三つ目は拡張機能メニューまたはツールバーの設定ファイルです。

description.xml 例も見てみます。

 <?xml version="1.0" encoding="UTF-8"?>
 <description xmlns="http://openoffice.org/extensions/description/2006"
   xmlns:xlink="http://www.w3.org/1999/xlink"
   xmlns:d="http://openoffice.org/extensions/description/2006">
   <identifier value="mytools.mri" />  (1)
   <version value="0.4.0" />  (2)
   <registration>  (3)
     <simple-license accept-by="user" default-license-id="this" >
     <license-text xlink:href="notices/notice.txt" license-id="this" />
   </simple-license>
   </registration>
   <update-information>  (4)
     <src xlink:href="http://..."/>
   </update-information>
 </description>

(1) では拡張機能を他と区別するための識別子を設定しています。

(2) 拡張機能のバージョン。

(3) 拡張機能のライセンス文章ファイル指定。

(4) オンラインアップデート情報のファイル指定。


**備考 [#w4261a6f]
3.0 で拡張機能マネージャの概観の大幅変更が予定されています。
-http://wiki.services.openoffice.org/wiki/New_Extension_Manager_UI

Reload   New Lower page making Edit Freeze Diff Upload Copy Rename   Front page List of pages Search Recent changes Backup   Help   RSS of recent changes