如何从 "sources" 生成可安装形式的 Eclipse 插件?

How do I produce an installable form of an Eclipse plugin from "sources"?

我想使用的插件的更新站点,OpenCL development tool, is dead. However, it seems some form of the sources is available:

hu.ngms.opencl.aggregator      19.4 kB  2015-04-08      
hu.ngms.opencl.common         131.4 kB  2015-04-08      
hu.ngms.opencl.editor         829.4 kB  2015-04-08      
hu.ngms.opencl.feature        148.6 kB  2015-04-08      
hu.ngms.opencl.product        188.6 kB  2015-04-08      
hu.ngms.opencl.projectwizard  741.7 kB  2015-04-08

我不是 Eclipse 开发人员,但我希望我能以某种形式重新创建该插件,以便在我安装的 Eclipse 中使用它(可能是 Eclipse CDT 18.09,也可能是晚于此;如果 Eclipse 版本有问题,我也想知道。)具体来说,带有 this installation procedure 的压缩更新站点会很好。

我该怎么做?

有了源代码,您可以使用我为您完成的 Maven 插件 Eclipse Tycho 创建一个更新站点 here:

  1. Fork original Git repositories(或者更准确地说,因为源代码分布在多个存储库中,我只 fork hu.ngms.opencl.product,将所有内容移入一个子文件夹,并将非空存储库的内容复制到我的存储库中;为简单起见,但会丢失其他存储库的历史记录)
  2. 在根目录下添加父目录pom.xml file and enable Tycho
  3. 添加 .mvn/extensions.xml 以启用 POM-less Tycho 并删除子文件夹中不再需要的 pom.xml 文件
  4. pom.xml文件中,添加target platform as p2 repository(这就足够了,但是在这里单独的目标定义文件会更好,因为它允许对目标平台进行更具体的定义)
  5. 对于更新站点,将category.xml文件添加到子文件夹
  6. pom.xml 文件中,将子文件夹添加为 modules
    • 两个插件,hu.ngms.opencl.editorhu.ngms.opencl.projectwizard
    • 特征:hu.ngms.opencl.feature
    • 更新网站(update-site
  7. 运行 Maven clean verify
    • 在第一次尝试时,除了更新站点之外的所有内容都已成功构建。删除不必要的(因为这里的一切都是平台无关的)listing of all supported platforms 解决了这个问题。或者,可以改用支持 32 位的旧 Eclipse 目标平台。
  8. 将推送时触发的 my generic GitHub action 添加到自动 运行 Maven 并将更新站点 发布为 Git 分支(没有历史记录以防止 Git 存储库增长)。

有关详细信息,请参阅 Eclipse Tycho for building plug-ins, OSGi bundles and Eclipse applications - Tutorial