5

EclipseRCP製品のビルドをPDEビルドからMavenTychoに切り替えました。メインの(ブランド化された)ランチャー実行可能ファイルに加えて、製品には「eclipsec.exe」ファイルが含まれるようになりました。お客様を混乱させる可能性があるため、このコンソールベースのランチャーは製品から除外したいと思います。Tychoでそれを行う方法はありますか?

4

2 に答える 2

13

私はtycho-usersリストでこの答えを得ました:

Eclipseリポジトリプロジェクトでは、.productファイルがあると仮定して、.p2.infという同じディレクトリに別のファイルを配置できます。

p2.infファイルの内容については、p2タッチポイントを配置してファイルを削除できます。

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

于 2012-08-07T15:04:23.457 に答える
2

tychoで直接解決する方法はわかりませんが、maven-antrun-pluginでこれを実現できます。タイムリーな位置でeclipsec.exeを削除するためのちょっとしたコツがあります。マテリアライズとp2-director-pluginのアーカイブ目標の間に削除手順を配置する必要があります。フェーズの事前統合テストに削除ステップを配置し、アーカイブステップをフェーズ統合テストに移動しました。

<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がありません。
お役に立てば幸いです。

于 2012-08-07T07:34:09.647 に答える