InfoQ

News

IzPack: Java以外にも使える、クロスプラットフォームインストーラ

作者 Craig Wickesser, 翻訳者 白石 俊平 投稿日 2008年6月8日 午前12時40分

コミュニティ
Java
トピック
リリース,
オープンソース
タグ
Open Source Project Releases
IzPackはオープンソースでカスタマイズ可能な、アプリケーションのパッケージング・配布・デプロイのための、クロスプラットフォームのソリューションである。これは当初、Julien Ponge(source)が大学在学中に作成したもので、主に趣味を目的としていた。それからコミュニティが成長し、周辺が騒がしくなってきたため、プロジェクトが開始されることになった。最も新しいものでIzPack 4.0(source)がリリースされている。InfoQはこの最新リリースについて、そしてターゲットとしている層はどこか、IsPackは将来どうなるのかについてJulienと話す機会を得たのだった。

InfoQ: IzPack 4.0に見られるコアの機能は何か?

Julien Ponge:  一般的な機能についてのリストは、http://izpack.org/features/ (英語)で見る事ができる。 IzPackは、インストーラの構成要素となるパネルを広く提供している(例えばライセンスの表示、デスクトップショートカットの作成、ポート番号のようなユーザからの入力データを収集する、など)

IsPack はクロスプラットフォームだが、OS特有のカスタマイズも可能だ。例えば、あなたが実行しているOSによってインストールされるファイルの種類を変えることができる。OSとの統合でより進んだ点としては、Windowsレジストリを扱う事ができたり、WindowsやX11のデスクトップにアプリケーションのショートカットを作成する事ができる。最後に、私たちはWindowsの自己解凍ファイルや、Mac OS Xのアプリケーションバンドルの内部にインストーラをラップするためのいくつかのスクリプトを提供している。

Version 4.0.0は、作業の結果として自然に登場した、成熟したリリースだと言える。

InfoQ: IsPackを使うべき人は誰か?それを扱うのに、どのくらいのレベルのプログラミングスキルが必要とされるのか?

Julien: オペレーティングシステムに関係なく動作するアプリケーションのインストーラを必要としている場合、IzPackはいつでも役に立つ。あなたの会社向けのアプリケーションでも、個人の趣味のプロジェクトでも、だ。スキルについては、特有のカスタマイズを行おうとしていない限りは、もちろんJavaを知っている必要はない。Javaコードの開発を主な仕事にしていない人々にとっても、IsPackは利用可能だ。.

InfoQ: どんなプロジェクトが現在IzPackを使っているか?

Julien: IsPackは、世界中の広い範囲の企業やプロジェクトによって使用されている。

人気のある製品の例を挙げるとJBossだ: 彼らのインストーラは、全てIzPackをベースとしている。IzPackを使用している人たちを正確に知る事は難しい。しかし私が知っている主な例としては、以下のようなものを挙げる事ができる:XWiki、Scala、Mule Enterprise、Jajukなどだ。

私たちは現在、IzPackを推進し、他のプロジェクトを支援するためのショーケースを作成している。私は個人的に、私の大好きなプロジェクトであるGlassfish(SunのJavaEEアプリサーバ)のインストーラを作成している。それはhttp://izpack.org/showcase-glassfish-v2/ (英語)から入手する事ができ、特に開発者にとっては、よりユーザフレンドリなインストール体験を提供している(それでもシステム管理者は恐らく、本番サーバに対しては"手作業による"インストールを好むだろうが)。あるIzPack開発者は最近、Groovyのインストーラを作ってショーケース作成の手伝いをしてくれている。あなたはもう少しすれば、Groovyコミュニティ内の友人(私たちは、どちらもCodehausでホストされている隣人同士なのだ)が作ったIzPackベースのインストーラについて聞き及ぶ事があるだろう。

InfoQ: Eclipse、NetBeans、IntelliJ等へのプラグインサポートを提供する計画はあるか?

Julien: その分野は、はっきりと改善可能な部分だ。だから答えはYesだ。いくつかの点から、私たちはこれをまじめにとらえている。

InfoQ: JavaFX Scriptアプリケーションのサポートは存在しているか?

Julien: いいや。しかし、より汎用的なスクリプティングのサポートと言うのは興味深い。ユーザインターフェースの作成に利用しているGroovy builderのシンタックスを活用すれば、恐らく素晴らしいものになるだろう。

InfoQ: IzPackはオープンソースのままでいるのか?そこにビジネスモデルは存在するか?

Julien: もちろんIzPackは、Apache Licenseバージョン2.0の元でオープンソースだし、これからもそうだろう。プロジェクトの創立者兼リーダーとしての私の意見では、コミュニティ - 開発とプロジェクトの成長を手助けしてくれる - と私との間に、暗黙の契約が存在していると言う事だ。そしてその契約というのは、プロダクトが作られたときにどのライセンスを選ぶか、と言う単純なものだ。より制限のきつい、もしくはクローズなライセンスに変更することは、私とコミュニティの間の信頼関係を破壊するだろう。名前を出したくはないが、私たちは最近いくつかのドラマチックな例を見てきたはずだ...私がそうした事を一切行わない、と言うのははっきりしている。私たちは、緩いライセンスの元でオープンソースプロジェクトをリリースする事で、ビジネス的な成功を得た例もいくつか見ている: G2One, 37 Signals, SpringSource, XWiki, もしくはより大きな企業として、ほとんどのソフトウェア資産をオープンソースとしてリリースしているSun Microsystemsのような企業もある。

InfoQ: IzPackの競合だと考えているのは何か、あなたは誰を"倒そうと"しているのか?

Julien: 私たちに対するオープンソースの競合と言うのは、かなり少ない。私たちは、プロプライエタリなクロスプラットフォームのデプロイメント・ソリューションと直接競合している。それらのほとんどは、私たちのようにプラットフォームをまたいでシームレスに動作する単一のインストーラよりも、特定のOSに向けたもの(例えばRPM、exe、DMG・・・)を生成する方を好んでいる。私たちはオープンソースにし、オープンなAPIを持つ事で、カスタマイズを非常に簡単に行えるよう仕向けている。私たちは、プロプライエタリなソリューションからIzPackに移行した、と言う多くの体験談を耳にしている。そのほとんどは、同等の機能に対するニーズをほとんど満たしているし、拡張がより簡単だから、と言うものだ。もちろん、値段的な要素も存在する: あなたは我々にお金を支払う必要がないのだ。

私たちはまた、ネイティブのインストーラ・ソリューションともわずかな程度"競合している"。NSISとInnoSetupは、Windowsオンリーのインストーラとしては非常に良い選択肢だ。

Launch4JとJSmoothと言った補完的なツールも存在し、IzPackベースのインストーラが動作するときのユーザ体験をより良いものにしてくれる。

InfoQ: 次のIzPackはどんなものになるのか?

Julien: 私たちは既にバージョン4.1に向けたいくつかの拡張を計画している: インストーラのメモリフットプリントを減らし、Pack200圧縮形式をサポートする。IzPackは成熟した、コミュニティドリブンなプロジェクトなので、私たちは人々のフィードバックを取り込み続けるだろう。

InfoQ: なぜ私/私たちは、IzPackを選ぶべきなのだろうか?

Julien: その理由は、成熟していること、大小さまざまな企業(人気企業も含む)で使われている事、アクティブなコミュニティが存在する事、あなたのニーズに簡単に合わせる事ができる事、だ。おっと、これを言うのを忘れていた。コストがかからない:-)

私は、もしあなたが複数のオペレーティングシステムをサポートしたり、伝統的なOS特有のソリューションが非常に高くつく場合、ソフトウェアのインストールにIzPackを使う事を強くお進めする。


IzPack はアプリケーションのパッケージング・配布・デプロイのための成熟したソリューションだ。デスクトップアプリケーションとスタンドアローンのサーバ、またはアプリケーションサーバに対するデプロイもサポートしています。Julienは、IzPackはJavaベースのアプリケーションだけのソリューションではなく、非Javaベースのアプリケーションにも同様に利用できると言う事を明確にしている。

さらに詳しい情報は以下のリンク先へ、

原文はこちらです:http://www.infoq.com/news/2008/05/izpack_40

ブックマーク
digg+,
reddit+,
del.icio.us+,
dzone+,
Hatena

No comments

返信

特集コンテンツ一覧

トップスポーツチームの監督に教わる秘訣

この論文では、氏が発見した原則を要約し、その原則をいかにしてソフトウェア開発に応用するかを説明します。

事例研究:Dutch Railwaysのプロジェクトにおける分散拠点でのスクラム・プロジェクト

この記事では、私達がどのようにして大規模(240人月、10万行強)でインドとオランダの開発者も参加したスクラム・プロジェクトを成功させたのかを示しています。

Agile2008チーム参加レポート - 帰国そして変化

Agileカンファレンスに「参加者としてだけでなく、発表者として参加しよう」を掲げたチームgoyattomは、サブミッションを提出し、7つのセッションが日本から選択されました。参加者はカンファレンスで各々の発表や、各セッションへの参加、諸外国のエンジニアとの出会い、ステージ上で DearXPを熱演などの様々な思い出を抱えて、無事日本に戻ってきました。

SilverlightとJavaのインターオペラビリティ

マイクロソフトのRobert Bellが、SilverlightとJavaを使用したインターオペラビリティのシナリオを紹介し、サンプルコードを例にとってアーキテクチャの手引きを提供します。

Agile2008 チーム参加レポート - カンファレンス参加編

Agileカンファレンスに「参加者としてだけでなく、発表者として参加しよう」を掲げたチームgoyattomは、サブミッションを提出し、7つのセッションが日本から選択されました。サブミッションが選択された人、そうでない人も含めて、個々の目的意識の確認、膨大なプログラムから聞きたいセッションの選択、旅行の準備、プレゼンテーションの準備の期間を終えて、無事当日を迎えました。

Agile2008 チーム参加レポート - 動機/準備編

筆者はアジャイルソフトウェア開発についての年に一度の国際会議であるAgile2008に初めて参加してきました。今年の日本からの参加者の数は14名にも及び、発表者は5名、受け持ったセッションは8つに及び、例年にない活躍を見せました。なぜ今年のAgile2008では、これほど多くの日本人が参加し発表に至ったのか? そのレポートをお届けします。

Javaトラブルシューティングメルマガ総集編 2008/08~09

エスエムジーでは、Java全般を対象にしたトラブルシューティングサービス「JaTS」を提供しています。この記事では、前回に引き続き、JaTSにて蓄積したトラブル事例とその解決ノウハウの一部をお送りしている「Javaトラブルシューティングメールマガジン」(JTSMM)の総集編として、過去2ヶ月のトラブル事例と追加情報をダイジェストとして提供いたします。

モデル駆動アプローチがうまく機能しない(しなくなる)8 つの理由

この記事では、モデル駆動アプローチがうまく機能しない、または機能しなくなることによって期待した結果が実現できなくなる 8 つの理由について書きたいと思います。