Maven的第谷:如何排除eclipsec.exe在产品构建?(Maven Tycho: How t

2019-07-30 20:05发布

我打开我们的Eclipse RCP的产品的构建从PDE-构建到Maven第谷。 除了主(品牌)启动程序可执行文件,该产品现在包括“eclipsec.exe”文件。 我们想从我们的产品省略这个基于控制台的发射器,因为它可能会误导我们的客户。 有没有办法做到这一点与第谷?

Answer 1:

我得到了这个答案第谷用户列表 :

在Eclipse的仓库项目,假设你有一个。产品的文件,你可以放置在一个名为同一个目录中的另一个文件.p2.inf

为了您的p2.inf文件的内容,你可以把一个P2接触点来删除该文件:

instructions.configure=org.eclipse.equinox.p2.touchpoint.natives.remove(path:${installFolder}/eclipsec.exe);



Answer 2:

我不知道怎么跟第谷直接解决的,但你可以使用Maven-antrun-插件实现这一目标。 有一个小窍门,以获得eclipsec.exe删除就及时位置。 你必须把物质化和P2-主任插件的归档目标之间的删除步骤。 我把相位预集成测试中删除步骤和移动存档步骤相集成测试。

<plugin>
      <artifactId>maven-antrun-plugin</artifactId>
        <executions>
          <execution>
            <id>delete-eclipsec.exe</id>
            <phase>pre-integration-test</phase>
            <configuration>
              <target>
                <delete file="${project.build.directory}/products/<<your.product.id>>/win32/win32/x86/eclipsec.exe"/>
              </target>
            </configuration>
            <goals>
              <goal>run</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <groupId>org.eclipse.tycho</groupId>
        <artifactId>tycho-p2-director-plugin</artifactId>
        <version>${tycho-version}</version>
        <executions>
          <execution>
            <id>materialize-products</id>
            <goals>
              <goal>materialize-products</goal>
            </goals>
          </execution>
          <execution>
            <id>archive-products</id>
            <phase>integration-test</phase>
            <goals>
              <goal>archive-products</goal>
            </goals>
          </execution>
        </executions>
      </plugin>

其结果是:在product.zip没有eclipsec.exe。
希望帮助。



文章来源: Maven Tycho: How to Exclude eclipsec.exe in a product build?