BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ニュース Jason Van Zyl氏、Sonatype社、Eclipse FoundationそしてMavenを語る

Jason Van Zyl氏、Sonatype社、Eclipse FoundationそしてMavenを語る

Sonatype社(リンク)は、Mavenの開発の中心となっている会社であるが、最近、戦略的開発者としてEclipse Foundationに加わることを発表した(リンク)。InfoQではSonatype社のCTOであり、Mavenの設立者であるJazon Van Zyl氏(リンク)と話をし、このパートナーシップの詳細とこれがMavenの将来にどんな意味をもたらすのかについて訊いた。

InfoQ: Eclipseとのより密接な関係がMavenにとってどんな効果があるのか詳しく教えて下さい。

Jason Van Zyl氏: MavenとEclipseのユーザ・コミュニティには大きく重なる部分があります。Sonatypeはこの2つのコミュニティを引き合わせて2つのプラットフォームにシームレスな統合をもたらそうとしています。特にユーザが一番の利益を受けるでしょう。SonatypeはApache Mavenのコミュニティとは長年の関係があります。そして私達は同様な関係をEclipseと築き、MavenとEclipseのコミュニティの橋渡しをしようとしています。ソフトウェアをどのようにビルドするのか、依存関係はどのように管理するのか、成果物のバイナリはどこに保存すべきなのかといったことについてMavenとEclipseのコミュニティ間には常に緊張感がありました。私達は開発者が開発に専念できるように、現実的でハイブリッドな解決方法を編み出しました。

InfoQ: このパートナーシップはMavenにとって短期的な観点、長期的な観点それぞれにどのような意味があるでしょうか?

Jason Van Zyl氏: まず短期的観点について技術的な面では、m2eclipseの構築に際して私はMavenが提供する組み込み技術について綿密に検討しました。MavenをEclipseプラットフォーム内で実行させることに適応させるため、多くの部分が変更されました。コミュニティの面では多くのユーザがm2eclipseに参加しているのを見ました。メーリング・リストはメールで溢れ、ユーザからは新機能への多くの要望が寄せられ、POMエディタのような私達が作成したツールを改善するためにユーザははっきりと応えてくれます。過去4か月で100K件近くのダウンロードがありましたが、これは1.0版になっていないパッケージには異例なことです。

多くのフィードバックによるこういった成果がMavenのコア部分に反映されます。ユーザがEclipseに期待する多くの振舞いとビジュアルに関するフィードバックによって私達はパフォーマンスについて強く意識するようになり、Mavenのコア部分からのイベント送出方法について認識するようになりました。Mavenには拡張性があります。しかしEclipseの強力な拡張ポイント機構にさらされ、私達はMavenプラットフォームでどのようにして適切な拡張ポイントを提供したらいいのか、そしてどのようにしてそれをEclipseプラットフォーム内部から可能にするのかについて考えました。

私達がどのようにしてEclipse内部でNexus(Sonatype社製のMavenリポジトリ・マネージャ)のAPIを公開し、あらゆるEclipseプラグインがMavenリポジトリに保存されている内容をクエリ出来るようにしたかというのがこのことの具体的な例になります。これは簡単な例ですが信じられないくらい強力な機能です。というのも、この機能により「Webサービス向けAPIの代わりに共同リポジトリから全ての成果を見つけ出します」と言えるようになり、開発者はインタラクティブにWebサービスを選択し、それらを結合してアプリケーションとしてまとめることで新しいアプリケーションが構築できるようになるからです。

長期的観点について見ると、Sonatype社はEclipse Foundationの戦略的開発者メンバですが、このことは私達にはEclipse理事会に席があり、(Eclipse)プラットフォームの方向性に影響を及ぼす機会が与えられているということを意味します。勿論、たったひとつのグループだけがやりたいことをできるとい訳ではありません。そこは話し合いです。戦略的開発者のメンバになったことでSonatype社はm2eclipseに専念するフル・タイムの労働者を提供することが義務づけられました。そしてその仕事の大部分はMavenそのものに割り当てられるので長期的にはMavenコミュニティに利益をもたらすことになります。Eclipseコミュニティを通してMavenは大きな注目を集めています。

私はApacheとEclipseのコミュニティはとても補完的な関係にあると感じています。Apacheはオープン・ソースの情熱を捕らえるように始まりましたが時折少々混乱を引き起こしています。一方でEclipseはオープン・ソースの実用的かつ商業的な面を持っています。ユーザをサポートする本当の意味でのプロジェクトの生態系を形成するにはどちらも欠かせません。Apacheではとても白熱した議論があります。時には意見の相違さえありますが、これは革新のためにはいいことです。全部が均一な物の積み重ねに過ぎないのだとしたら何も新しい物は誕生しません。Apacheはまったく均一ではありません。ところが、成果物の配信という面ではその知的財産(IP)に対する細心の注意、複数リリース間の高いAPI互換性、それにリリース・スケジュールに対する厳密性によってEclipseが抜きんでています。m2eclipseのようなツールを提供するためにこれら両方のコミュニティに影響を与えるようなハイブリッドな仕組みを作ることは、私にとって申し分のないことです。

加えて長期的な観点ではSonatype社とEclipseの関係によってMavenプロジェクトにリリース・スケジュールへの配慮、レグレッションの撲滅、ユーザとのコミュニケーションの向上がもたらされるでしょう。このことはMaven2.0.9と2.0.10のリリースにおける広範なリリース候補版の作成サイクルを通したレグレッションの撲滅によって既に始まっています。

InfoQ: Maven2.1のリリース予定日と予定機能を教えて下さい。また、Eclipseとの関係強化によってこのリリースに何か影響はありましたか?

Jason Van Zyl氏: 現在、私達はスケジュールについては公にしていません。Maven2.1を出来るだけ早くリリース出来るように努めているということは言えます。そして、Eclipseとの関係がこれを後押ししています。Maven2.1に対する主な機能追加の一つは組込技術への対応で、これはm2eclipseにとって重要なものなのです。現在Maven2.1-alpha-1のリリースに向けて準備しています。そして2.0.x上のプラグインに対する互換性を確保しようとしている段階です。これはユーザがなるべく簡単に移行できるようにするためです。Eclipseはリリースに際して知的財産プロセス(IP process)の遵守を望むので、私達は今回のリリースがEclipseのIP Processに極力逆らわないように注力しているところです。

InfoQ: コミュニティからのフィードバックはMavenにどのように影響しましたか?

Jason Van Zyl氏: Mavenの過去2回のリリースでは本当にユーザに焦点を当ててきました。全てのレグレッションの修正を試みてきましたし、特に要求の多かった機能を追加しました。m2eclipseプラグインについては、Project Object Model(POM)エディタとNexusリポジトリ管理という最も要求の多かった機能を追加しました。

InfoQ: これからのMavenの開発におけるSonatype社の役割は何でしょう?

Jason Van Zyl氏: Sonatype社には長い間Apache MavenのコミッタでありApacheのメンバである社員が数多くいます。従って私達は常にMavenの開発に深くかかわってきました。私はほぼ5年前にMavenの開発を始めました。そしてこの先の方向性については特に計画があるわけではありません。Mavenコミュニティを前進させる手助けを継続しようと思います。商業的活動の当然の成り行きとしてより多くの人がMavenに関係する技術に従事する方に向かって私達は活動します。ですからSonatype社は引き続きMavenコミュニティにおいて重要な役割を担い続けるでしょう。クライアントからの要求の多くはみんなが関心のあることだと思います。ですから私達の成果はMavenコミュニティ全体にとって有益なものになると感じています。多くのOSGiの構築やスクリプト言語による構築を行っていますが、これらは間違いなく多くの人がとても関心をもっていることです。究極的にはSonatype社の参加によって、従来想定されていたよりも早くこれらの技術による構築をもたらすことになるでしょう。

InfoQ: 将来のリリースでMavenのモジュールとOSGiを統合する計画はありますか。

Jason Van Zyl氏: 勿論です!そのための構築プロジェクトはTychoと呼ばれています。このプロジェクトはOSGiバンドルとEclipseプラグインの構築にMavenベースのソリューションを提供することになるでしょう。現在のプロトタイプはMaven標準の依存関係解決のメカニズムを破棄して、OSGiベースの依存関係解決メカニズムに処理を委譲するように変更しました。POMなしでOSGiベースのプロジェクトを作成することができます。このことはさらにp2リポジトリとのやり取りを伴います。私達はMavenを使って、OSGiベースの開発における包括的なソリューションを提供したいと思っています。私達の成果物の多くでリポジトリとのやり取りが発生します。そして多くの部分が、Mavenリポジトリ、標準のEclipse更新サイト、そしてp2リポジトリ間の調整用レイヤを提供するために私達がNexusに加えている変更次第です。Tychoには労力を注いでいます。そしてこれがMavenとOSGiの世界の間に統一/統合レイヤを提供することになると信じています。さらにTychoはm2eclipseと共にEclipseファンデーションに移行することになります。

原文はこちらです:http://www.infoq.com/news/2008/08/van-zyl-eclipse-sonatype-maven

この記事に星をつける

おすすめ度
スタイル

BT