由于缺少bundle, Tycho构建失败。用于e4 RCP应用程序的dropins。

时间:2023-01-12 21:52:29

I am very new to tycho. I changed my existing e4 RCP application for Tycho Maven based build. While my normal export from Eclipse IDE works fine, with Tycho I am getting following error.

我对第谷很熟悉。我将现有的e4 RCP应用程序更改为基于Tycho Maven的构建。当我从Eclipse IDE中正常导出工作正常时,Tycho会出现以下错误。

  Cannot complete the install because one or more required items could    not be found.
  Software being installed: Chartcube Database Connector 1.0.0.201601060933 (**.**.demo.product 1.0.0.201601060933)
  Missing requirement: toolingwin32.win32.x86_64org.eclipse.equinox.p2.reconciler.dropins 1.0.0.201601060933 requires 'bundle org.eclipse.equinox.p2.reconciler.dropins 1.1.300.v20150423-1455' but it could not be found
   Cannot satisfy dependency:
   From: **** ****. 1.0.0.201601060933 (com.*****.*****.demo.product 1.0.0.201601060933)
   To: toolingcom.toolingcom.****.****.demo.product.configuration [1.0.0.201601060933]
  Cannot satisfy dependency:
  From: toolingcom.****.****.demo.product.configuration 1.0.0.201601060933
   To: toolingwin32.win32.x86_64org.eclipse.equinox.p2.reconciler.dropins [1.0.0.201601060933]
  Application failed, log file location: /home/****/.log

My aggreegator pom file is as :

我的aggreegator pom文件如下:

<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <modelVersion>4.0.0</modelVersion>
  <groupId>group</groupId>
  <artifactId>artifact</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <packaging>pom</packaging>
  <modules>
    <module>ChartCubeDemo</module>
  </modules>

  <properties>
    <tycho.version>0.24.0</tycho.version>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>  
    <mars-repo.url>http://download.eclipse.org/releases/mars</mars-repo.url>
    <nebula-repo.url>http://download.eclipse.org/nattable/releases/1.3.0/repository/</nebula-repo.url>
    <orbit-repo.url>http://download.eclipse.org/tools/orbit/downloads/drops/R20150124073747/repository/</orbit-repo.url>
  </properties>

  <repositories>
    <repository>
      <id>mars</id>
      <url>${mars-repo.url}</url>
      <layout>p2</layout>
    </repository>
    <repository>
      <id>nebula</id>
      <url>${nebula-repo.url}</url>
      <layout>p2</layout>
    </repository>
    <repository>
      <id>orbit</id>
      <url>${orbit-repo.url}</url>
      <layout>p2</layout>
    </repository>

  </repositories>

  <build>
     <plugins>

        <plugin>
            <groupId>org.eclipse.tycho</groupId>
            <artifactId>target-platform-configuration</artifactId>
            <version>0.24.0</version>
            <configuration>
                <environments>
                    <environment>
                        <os>win32</os>
                        <ws>win32</ws>
                        <arch>x86_64</arch>
                    </environment>
                    <environment>
                        <os>linux</os>
                        <ws>gtk</ws>
                        <arch>x86_64</arch>
                    </environment>
                    <environment>
                        <os>macosx</os>
                        <ws>cocoa</ws>
                        <arch>x86_64</arch>
                    </environment>
                </environments>
            </configuration>
        </plugin>


        <plugin>
            <groupId>org.eclipse.tycho</groupId>
            <artifactId>tycho-maven-plugin</artifactId>
            <version>0.24.0</version>
            <extensions>true</extensions>
        </plugin>
     </plugins>
  </build>
</project>

And my product file is :

我的产品文件是:

<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <modelVersion>4.0.0</modelVersion>
  <parent>
    <groupId>group</groupId>
    <artifactId>artifact</artifactId>
    <version>0.0.1-SNAPSHOT</version>
  </parent>
  <groupId>group</groupId>
  <artifactId>artifact</artifactId>
  <version>1.0.0-SNAPSHOT</version>
  <packaging>eclipse-repository</packaging>


  <build>
        <plugins>
            <plugin>
                <groupId>org.eclipse.tycho</groupId>
                <artifactId>tycho-p2-director-plugin</artifactId>
                <version>0.24.0</version>
                <configuration>
                    <formats>
                        <win32>zip</win32>
                        <linux>tar.gz</linux>
                        <macosx>tar.gz</macosx>
                    </formats>
                </configuration>
                <executions>
                    <execution>
                        <id>materialize-products</id>
                        <goals>
                            <goal>materialize-products</goal>
                        </goals>
                    </execution>
                    <execution>
                        <id>archive-products</id>
                        <goals>
                            <goal>archive-products</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>
</project>

Is there something I am missing? Should I need to add anything extra in these POM files?

有什么东西我丢了吗?我是否需要在这些POM文件中添加额外的内容?

Also My .Product file has following configurations :

我的.Product文件也有以下配置:

     <configurations>
      <plugin id="org.eclipse.core.runtime" autoStart="true" startLevel="0" />
      <plugin id="org.eclipse.equinox.common" autoStart="true" startLevel="2" />
      <plugin id="org.eclipse.equinox.ds" autoStart="true" startLevel="2" />
      <plugin id="org.eclipse.equinox.event" autoStart="true" startLevel="2" />
      <plugin id="org.eclipse.equinox.p2.reconciler.dropins" autoStart="true" startLevel="0" />
      <plugin id="org.eclipse.equinox.simpleconfigurator" autoStart="true" startLevel="1" />
      <plugin id="org.eclipse.update.configurator" autoStart="true" startLevel="4" />
   </configurations>

1 个解决方案

#1


2  

You are showing the start configuration of your product, but not the contents of your product. I assume the org.eclipse.equinox.p2.reconciler.dropins plugin is not part of your product. If you have a feature based product you need to ensure that this plugin is also in one of the features.

您展示的是产品的开始配置,而不是产品的内容。我认为org.eclipse.equinox.p2.reconciler。dropins插件不是你产品的一部分。如果您有一个基于特性的产品,您需要确保这个插件也在其中一个特性中。

Another option would be to remove it from your launch configuration. I assume it was added by adding the defaults via button, but it should not be necessary.

另一种选择是将它从启动配置中删除。我假设它是通过按钮添加默认值来添加的,但它不应该是必需的。

#1


2  

You are showing the start configuration of your product, but not the contents of your product. I assume the org.eclipse.equinox.p2.reconciler.dropins plugin is not part of your product. If you have a feature based product you need to ensure that this plugin is also in one of the features.

您展示的是产品的开始配置,而不是产品的内容。我认为org.eclipse.equinox.p2.reconciler。dropins插件不是你产品的一部分。如果您有一个基于特性的产品,您需要确保这个插件也在其中一个特性中。

Another option would be to remove it from your launch configuration. I assume it was added by adding the defaults via button, but it should not be necessary.

另一种选择是将它从启动配置中删除。我假设它是通过按钮添加默认值来添加的,但它不应该是必需的。