我有基于插件模型的RCP应用程序。我想把JRE放到由Maven + Tycho创建的最终工件上。我试着遵循这些推荐
including-a-jre-in-a-tycho-build
bundle-jre-along-with-your-product
我创建了另一个功能项目,其中将所需的JRE放在功能项目的根目录中。在我的情况下这jre / win64。我为产品定义添加了功能。但我不明白如何通知maven进程负责在我的功能项目中创建有关JRE的产品分发 我的构建属性文件是
bin.includes=feature.xml
root.win32.win32.x86_64= ./jre/win64
我还创建了新的pom.xml并添加到父pom.xml 我使用tycho 1.1.0和Eclipse Neon.3作为平台
答案 0 :(得分:1)
对于我的开源Eclipse RCP e4应用程序,我正在捆绑由Azul提供的OpenJDK二进制文件。查看构建Eclipse功能的Github project。
简而言之,它使用了上述博文Including a JRE in a Tycho build中概述的想法。使用根文件的优点是可以通过P2更轻松地更新JRE(在根文件的情况下,Windows上运行的JRE可能会阻止使用更新的JRE替换)。
Tycho中的that repository版本确实:
setJvm
p2 Touchpoint Instructions 在RCP产品中使用此功能不仅仅是将功能添加到产品定义中:
<?xml version="1.0"?>
<?pde version="3.5"?>
<product name="Test Product">
<features>
<feature id="test.feature"/>
<feature id="org.eclipse.e4.rcp"/>
<feature id="name.abuchen.zulu.jre.feature"/>
</features>
</product>