Можно ли создать проект плагина Eclipse, используя Maven Tycho с включенными сторонними зависимостями? - PullRequest
0 голосов
/ 01 ноября 2018

Я хочу создать плагин Eclipse, который содержит встроенную базу данных (например, Derby) и имеет JPA-подобный EclipseLink. Возможно, содержит много сторонних зависимостей в одном плагине

Кроме того, мне интересно, возможно ли создать проект плагина, используя Tycho, который имеет только один файл Pom, без отдельных Poms-child Poms?

Например, как показано ниже Pom.xml

    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.company</groupId>
  <artifactId>com.company.persistance</artifactId>
  <version>1.0.0-SNAPSHOT</version>
  <packaging>eclipse-plugin</packaging>
    <properties>
        <tycho-version>1.0.0</tycho-version>
    </properties>
    <dependencies>
        <dependency>
            <groupId>org.eclipse.persistence</groupId>
            <artifactId>eclipselink</artifactId>
            <version>2.5.1</version>
        </dependency>
        <dependency>
            <groupId>org.eclipse.persistence</groupId>
            <artifactId>javax.persistence</artifactId>
            <version>2.0.0</version>
        </dependency>
        <dependency>
            <groupId>org.eclipse.persistence</groupId>
            <artifactId>commonj.sdo</artifactId>
            <version>2.1.1</version>
        </dependency>   
        <dependency>
            <groupId>org.apache.derby</groupId>
            <artifactId>derby</artifactId>
            <version>10.12.1.1</version>
            <scope>runtime</scope>
        </dependency>
        <dependency>
            <groupId>org.apache.derby</groupId>
            <artifactId>derbyclient</artifactId>
            <version>10.10.1.1</version>
            <type>jar</type> 
        </dependency>
    </dependencies>

  <repositories>
        <repository>
            <id>luna</id>
            <layout>p2</layout>
            <url>http://download.eclipse.org/releases/luna</url>
        </repository>
    </repositories>

  <build>
    <sourceDirectory>../src</sourceDirectory>
    <plugins>
        <plugin>
            <groupId>org.eclipse.tycho</groupId>
            <artifactId>tycho-maven-plugin</artifactId>
            <version>${tycho-version}</version>
            <extensions>true</extensions>
        </plugin>
        <plugin>
            <groupId>org.eclipse.tycho</groupId>
            <artifactId>target-platform-configuration</artifactId>
            <version>${tycho-version}</version>
            <configuration>
              <pomDependencies>consider</pomDependencies>    
            </configuration>
         </plugin>
    </plugins>
  </build>
</project>

Я довольно новичок в Maven + Tycho, и приведенный выше скрипт не работает так, как я ожидал.

Я также пытаюсь следовать этому уроку, но без родительско-дочерних пом https://wiki.eclipse.org/Tycho/How_Tos/Dependency_on_pom-first_artifacts

Поскольку я также хочу, чтобы Maven загрузил сторонние зависимости и позже поместил их в файл Manifest.mf.

Возможно ли это создать? Или есть другие подходы к их достижению?

Заранее спасибо

...