2016-01-06 78 views
2

我对tycho非常陌生。我更改了现有的基于Tycho Maven构建的e4 RCP应用程序。虽然我从Eclipse IDE正常导出工作正常,与Tycho我得到以下错误。Tycho构建因e4 RCP应用缺少bundle“org.eclipse.equinox.p2.reconciler.dropins”而失败

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 

我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> 

我的产品文件是:

<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> 

有什么我失踪?我是否需要在这些POM文件中添加额外的东西?

也是我的。产品文件以下配置:

 <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> 

回答

2

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

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

+0

请问你是否更明确,我有这样的问题(有点不同),我不明白你的答案? –

+0

什么比“从产品配置中去除org.eclipse.equinox.p2.reconciler.dropins”更明确?或者“确保org.eclipse.equinox.p2.reconciler.dropins是产品的一部分,例如任何包含的功能”? –

+0

我没有同样的问题,我担心如果我可以在这里利用你的答案。这是我的:http://stackoverflow.com/questions/41223862/eclipse-cannot-find-dependencies-of-a-plugin-built-with-maven-tycho –

相关问题