0

会社の主な製品ライン用のMozillaプラグインの作業を開始しようとしています。私は、Gecko SDKを使用してビルドできるという印象を受けました。たとえば、2つの主要なリビジョンがあり、それは、人が合理的に使用するすべてのブラウザーをカバーします。また、これはChromeとOperaにも当てはまると思います(ファクトチェックは誰か?)。

しかし、私はドキュメントを読んでいて、これを見つけました:

2.0より前のバージョンのGeckoの場合、ターゲットにするMozillaの最も古いバージョンのGeckoSDKバージョンを選択する必要があります。Geckoバージョン2.0以降では、バージョン間の互換性がサポートされなくなったため、リリースごとにコンポーネントを再コンパイルする必要があります。

誰かが私にこれが私がそれが意味すると思うことを意味しないと言ってください。これは、デプロイ後でも、Geckoのバージョンごとにプラグインを無期限に再コンパイルする必要があることを意味しますか?それは、Mozillaの素晴らしいチームが私たちに与えるようなものではないようです。

4

1 に答える 1

2

Gecko SDK には、少なくとも 2 つのまったく異なる目的があります。ドキュメントを引用するには:

XULRunner SDK とも呼ばれる Gecko SDK は、XPCOM コンポーネントを開発するための XPIDL ファイル、ヘッダー、およびツールのセットであり、JavaScript を使用して XUL からアクセスすることができます。

...

Gecko SDK には、xpidl コンパイラ/リンカーや最新の npapi.h など、スクリプト可能な NPAPI プラグインを作成するために必要なすべてのツールとヘッダーが含まれています。

このページから引用した文は、SDK の主な目的、つまり Firefox 拡張機能で使用できるネイティブ XPCOM コンポーネントを構築することに当てはまります。これらの XPCOM コンポーネントはブラウザの内部インターフェースにアクセスできるため、インターフェースの安定性の問題が生じます。Gecko 2.0 (Firefox 4) 以降、この問題は、XPCOM コンポーネントが 1 つの Firefox バージョンのみで動作するように解決されています。別のバージョンの Firefox で動作させるには、新しいバージョンの Gecko SDK で再コンパイルする必要があります。

ドキュメントは実際には明確にしていませんが、これはすべて、固定インターフェイスのみを介してブラウザーと通信する NPAPI プラグインには適用されません。NPAPI プラグインをコンパイルするために Gecko SDK がどれだけ必要なのかはわかりませんが、それはnpapi.h他のいくつかのヘッダー ファイルだけのようです。このファイルは頻繁に変更されるわけではありません。変更はほとんど定数に限定されています。そのため、古い SDK バージョンに対してプラグインをコンパイルしても問題はありません。唯一の副作用は、新しい NPAPI 機能を使用できない可能性があることです。

つまり、Gecko SDK の代わりにNPAPI SDKを使用できるはずです。これははるかに小さいダウンロードであり、NPAPI プラグインの作成専用です。とにかく、Gecko SDK のファイルは基本的に NPAPI SDK からコピーされます (ファイル履歴の「npapi-sdk rNN に同期」の変更に注意してください)。

于 2012-08-18T23:09:25.333 に答える