簡體   English   中英

用Tycho構建的應用程序中缺少插件JAR

[英]Plugin JARs are missing in an application built with Tycho

我正在使用Maven Tycho構建Eclipse應用程序。 我設法創建了pom文件來構建插件和功能。 我在它們上安裝並成功構建。 我還為應用程序(產品)創建了pom,並將Packaging設置為“ eclipse-application”。 該應用程序基於功能。 我運行安裝並成功構建。 我得到了為應用程序生成的文件夾,其中包含文件夾“ plugins”和“ features”。

問題在於,並非所有的jar文件(對於所有插件)都可以在plugins文件夾中找到。 我可以找到功能中列出的插件的jar文件。 但是不會生成其他插件的“依賴關系”選項卡中列出的插件的jar文件。 換句話說,僅功能中引用的插件會生成為jar文件,而不會生成插件中所引用的jar文件。

顯然,沒有它們,我將無法運行該應用程序。 我究竟做錯了什么? 如何獲得所有必需的jar文件?

謝謝!

首先,不要使用eclipse-application 它已經過時了,作為一個試圖使其與自己的項目一起使用的人,我可以告訴你這是一個主意,因為它存在很多問題。 相反,請使用eclipse-repository

其次,將在您的產品plugins目錄中顯示的唯一.jar文件將是已成功編譯的文件,並且也位於.product文件的依賴項部分(而不是 manifest.mf)中。

我懷疑您的問題與第二點有關,但是我已經看到eclipse-application做了很多奇怪的事情,僅靠它本身就可以解決您的問題。

第一個答案在正確的軌道上……使用eclipse-repository

要讓Tycho生成存儲庫,您可能正在使用tycho-p2-repository-plugin ...如果您使用的是該插件,則可能需要將此小元素添加到配置部分。

<includeAllDependencies>true</includeAllDependencies>

這是我的p2repository插件中的pom.xml的更大示例。

<?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>
<parent>
    <groupId>my.domain.product</groupId>
    <artifactId>parent</artifactId>
    <version>1.1.8-SNAPSHOT</version>
    <relativePath>../my.domain.product.parent</relativePath>
</parent>
<artifactId>my.domain.product.p2repository</artifactId>
<packaging>eclipse-repository</packaging>
<name>My Product - P2 Repository</name>

<build>
  <plugins>
    <plugin>
      <groupId>${tycho-groupid}</groupId>
      <artifactId>tycho-p2-repository-plugin</artifactId>
      <version>${tycho-version}</version>
      <configuration>
        <includeAllDependencies>true</includeAllDependencies>
        <createArtifactRepository>true</createArtifactRepository>
        <compress>true</compress>
      </configuration>
    </plugin>
 </plugins>

希望這可以幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM