これは部分的な回答にすぎないのでコメントにする必要がありますが、長すぎます。
.eclipseproduct
ビルド時に生成されたファイルであり、プロビジョニング時にp2によって作成されたものではないようです。
これを見つけるために、p2directorを使用してEclipse4.2のコピーをプロビジョニングしました(手順については、このページの「完全な製品のインストール」セクションを使用し、リポジトリを3.6サイトではなく4.2サイトに更新し、Windowsパスの使用からパスに変更しました私のMacに適しています)。
ファイルリストで.eclipseproduct
、タイムスタンプが異なるため、ファイルが生成されたアーティファクトではなく、解凍されたアーティファクトのように見えることに気付きました。
$ ls -lA
total 304
-rw-r--r-- 1 myself group 60 Sep 14 18:13 .eclipseproduct
drwxr-xr-x 3 myself group 102 Nov 2 14:49 Eclipse.app
-rw-r--r-- 1 myself group 112366 Nov 2 14:49 artifacts.xml
...
これにより、ディレクトリ内のさまざまなキャッシュを調べたところ、ライセンスとファイルを含むzipファイルで./p2
あるインストール可能ユニットがあることがわかりました...org.eclipse.platform_root
.eclipseproduct
:p2 $ zipinfo org.eclipse.equinox.p2.core/cache/binary/org.eclipse.platform_root_*
Archive: org.eclipse.equinox.p2.core/cache/binary/org.eclipse.platform_root_4.2.1.v20120814-120134-9JF7BHVGFyMveli1uX6aTH0q-eAap6PAgOP5mO 38125 5
-rw---- 2.0 fat 0 bl defN 14-Sep-12 18:13 readme/
-rw---- 2.0 fat 104173 bl defN 14-Sep-12 18:13 readme/readme_eclipse.html
-rw---- 2.0 fat 9051 bl defN 14-Sep-12 18:13 notice.html
-rw---- 2.0 fat 60 bl defN 14-Sep-12 18:13 .eclipseproduct
-rw---- 2.0 fat 16536 bl defN 14-Sep-12 18:13 epl-v10.html
5 files, 129820 bytes uncompressed, 37501 bytes compressed: 71.1%
org.eclipse.equinox.p2.repository/cache/content*.jar
ファイルにあるcontent.xmlファイルでP2IU情報を見つけました。
...
<unit id='org.eclipse.platform_root' version='4.2.1.v20120814-120134-9JF7BHVGFyMveli1uX6aTH0q-eAap6PAgOP5mO'>
<provides size='1'>
<provided namespace='org.eclipse.equinox.p2.iu' name='org.eclipse.platform_root' version='4.2.1.v20120814-120134-9JF7BHVGFyMveli1uX6aTH0q-eAap6PAgOP5mO'/>
</provides>
<artifacts size='1'>
<artifact classifier='binary' id='org.eclipse.platform_root' version='4.2.1.v20120814-120134-9JF7BHVGFyMveli1uX6aTH0q-eAap6PAgOP5mO'/>
</artifacts>
<touchpoint id='org.eclipse.equinox.p2.native' version='1.0.0'/>
<touchpointData size='1'>
<instructions size='2'>
<instruction key='install'>
unzip(source:@artifact, target:${installFolder});
</instruction>
<instruction key='uninstall'>
cleanupzip(source:@artifact, target:${installFolder});
</instruction>
</instructions>
</touchpointData>
</unit>
...
つまり、このIUがインストールされると(で必要に応じてorg.eclipse.platform.feature.group
)、p2はアーティファクトを.eclipseproduct
インストールフォルダーに解凍するだけです。変換は必要ありません。したがって、インストール時間の前に生成する必要があります。
編集:私はそれをEclipse Gitリポジトリーでも見つけましたが、これが上記のIUに変換されたものであるかどうかはわかりません...