这应该是一个评论,因为它只是部分答案,但它太长了。
看来,.eclipseproduct
是在构建时生成的文件,并在供应时用P2未创建:
为了找到这个我调配使用Eclipse P2主任(4.2的副本,我用Installing a Complete product section of this page说明,将版本库更新到4.2 site而不是使用3.6版本,并从使用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
...
这让我在./p2
翻翻各种缓存目录中,我发现有一个可安装单位org.eclipse.platform_root
这是一个包含授权和.eclipseproduct
文件的zip文件...
: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%
我发现我P2在org.eclipse.equinox.p2.repository/cache/content*.jar
文件中找到的文件的content.xmlü信息:
...
<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 Repositories,但还没有想出如果是变成了IU以上或没有提到的一个...
你需要什么的'.eclipseproduct'文件对于?链接的文档没有提到该文件。 – oberlies
它确实 - 它在.exe的布局中提到它。我们主要使用.eclipseproduct文件来确定应用程序的版本,这可以很容易地重新定位到config.ini文件中。我只是好奇,如果这是我应该做的,但在过去(甚至在Eclipse 4.2中打包一个)。 我大多只是好奇,如果我们应该放弃.eclipseproduct(也许这是一个过时的神器?)或找出如何与我们的产品生成它。 – jonnywri