具有远程功能的本地更新站点

时间:2011-12-13 13:21:51

标签: eclipse eclipse-indigo update-site

我想创建一个轻量级的eclipse更新站点,它只引用远程更新站点中的功能或插件,以便我的团队有一个入口点来安装和更新我们用于某些的所有常见插件项目

但我找不到引用这些外部功能/插件的方法。我已经创建了一些到外部更新站点的归档映射,但它在构建更新站点时不断下载所有工件。

有没有办法防止这种情况,以便我们只在本地拥有描述符?

2 个答案:

答案 0 :(得分:4)

如果您提供可指向一个或多个远程回购的复合p2回购,则可以聚合其他远程更新站点。在更新目录中,创建2个文件:

<强> compositeArtifacts.xml

<?xml version='1.0' encoding='UTF-8'?>
<?compositeArtifactRepository version='1.0.0'?>
<repository name='Local Artifact Repository Collection' type='org.eclipse.equinox.internal.p2.artifact.repository.CompositeArtifactRepository' version='1'>
  <properties size='2'>
    <property name='p2.timestamp' value='1323486257091'/>
    <property name='p2.compressed' value='true'/>
  </properties>
  <children size='2'>
    <child location='http://download.eclipse.org/eclipse/updates/3.8-I-builds/'/>
    <child location='http://download.eclipse.org/e4/updates/0.12-I-builds'/>
  </children>
</repository>

<强> compositeContent.xml

<?xml version='1.0' encoding='UTF-8'?>
<?compositeMetadataRepository version='1.0.0'?>
<repository name='Local Content Repository Collection' type='org.eclipse.equinox.internal.p2.metadata.repository.CompositeMetadataRepository' version='1'>
  <properties size='2'>
    <property name='p2.timestamp' value='1323486257489'/>
    <property name='p2.compressed' value='true'/>
  </properties>
  <children size='2'>
    <child location='http://download.eclipse.org/eclipse/updates/3.8-I-builds/'/>
    <child location='http://download.eclipse.org/e4/updates/0.12-I-builds'/>
  </children>
</repository>

然后,您可以将更新目录用作Help>Install New Software

的输入

答案 1 :(得分:3)

您可以这样做,但您必须通过存档将插件和功能添加到 site.xml 。此外,重要的是不要更改名称并包括存档路径中的功能所需的所有插件。以下是一个真实示例的片段:

<feature url="http://borisvl.github.com/Pdf4Eclipse/features/de.vonloesch.pdf4eclipse_1.0.1.jar" id="de.vonloesch.pdf4eclipse" version="1.0.1">
  <category name="Pdf4Eclipse"/>
</feature>

<archive path="features/de.vonloesch.pdf4eclipse_1.0.1.jar" url="http://borisvl.github.com/Pdf4Eclipse/features/de.vonloesch.pdf4eclipse_1.0.1.jar"/>
<archive path="plugins/de.vonloesch.pdf4Eclipse_1.0.1.201111161450.jar" url="http://borisvl.github.com/Pdf4Eclipse/plugins/de.vonloesch.pdf4Eclipse_1.0.1.201111161450.jar"/>
<archive path="plugins/de.vonloesch.pdf4eclipse.help_1.0.0.201111161450.jar" url="http://borisvl.github.com/Pdf4Eclipse/plugins/de.vonloesch.pdf4eclipse.help_1.0.0.201111161450.jar"/>

正如您所看到的,这包括来自github页面的功能de.vonloesch.pdf4eclipse_1.0.1.jar。此功能包括两个插件,这些插件也通过<archive ... />.

添加

这种方法的缺点是您必须手动包含该功能的任何更新版本,但我认为不存在包含外部功能的其他可能性。