Здание REDHAWK Explorer/IDE

В настоящее время я пытаюсь собрать расширения REDHAWK Explorer с исходным кодом на github; однако, когда я пытаюсь запустить сценарии Maven для вещей, я получаю ошибку отсутствующего хранилища:

Caused by: org.eclipse.equinox.p2.core.ProvisionException: No repository found at http://download.redhawksdr.org/nxm-rcp/releases/1.0.

Я вижу, что это репозиторий, размещенный на redhawksdr.org; это то, что должно быть и не? Я знаю, что nxm указывают на http://nextmidas.techma.com/; Это внутренний плагин, который был разработан командой Redhawk, и, как таковой, он также в репо?

Кроме того, из какого pom.xmls я должен строить?

2 ответа

Решение

К сожалению, мы не смогли разместить общедоступные репозитории p2. Это заполнители для будущего репозитория p2.

Вы можете обойти это, создав все репозитории и установив их в свой локальный репозиторий Maven.

Для этого клонируйте каждое из репозиториев Maven:

mil.jpeojtrs.sca
gov.redhawk.core
gov.redhawk.ide
gov.redhawk.codegen
gove.redhawk.ide.product

Как вы видели, в каждом репозитории вы найдете нужную папку.

Постройте, используя следующую команду в следующем порядке:

mvn clean install

mil.jpeojtrs.sca/releng
gov.redhawk.core/releng/core
gov.redhawk.core/releng/rcp
gov.redhawk.ide/releng
gov.redhawk.codegen/releng
gov.redhawk.ide.product/releng

Надеемся, что в будущем мы получим публичный репозиторий p2, и вам больше не придется выполнять эти дополнительные действия. Приносим извинения за неудобства.

Следующий файл maven pom.xml должен помочь вам собрать пакет OSGi для jacorb. В этом пакете указана версия 3.3.0, поскольку RH 1.10 зависит от этой версии, но вы, вероятно, можете изменить ее для своих нужд:

<project xmlns="http://maven.apache.org/POM/4.0.0">
<groupId>**yourGroupId**</groupId>
<modelVersion>4.0.0</modelVersion>
<artifactId>jacorb-osgi</artifactId>
<version>1.0.0-SNAPSHOT</version>
<packaging>bundle</packaging>
<name>jacORB OSGI bundle</name>
<build>
    <plugins>
        <plugin>
            <groupId>org.apache.felix</groupId>
            <artifactId>maven-bundle-plugin</artifactId>
            <version>1.4.0</version>
            <extensions>true</extensions>
            <configuration>
                <instructions>
                    <Bundle-SymbolicName>${project.groupId}.${project.artifactId}</Bundle-SymbolicName>
                    <Bundle-Name>${project.name}</Bundle-Name>
                    <Bundle-Version>3.3.0</Bundle-Version>
                    <Export-Package>org.omg.CosEventChannelAdmin;version="3.3.0", org.omg.CosEventComm;version="3.3.0"</Export-Package>
                    <Private-Package>org.omg.*,org.jacorb.*</Private-Package>
                    <Import-Package>!antlr,!antlr.*,!org.picocontainer,!org.picocontainer.defaults,!org.slf4j,!sun.security.jgss.spi,!org.tanukisoftware.wrapper,*</Import-Package>
                </instructions>
            </configuration>
        </plugin>
    </plugins>
</build>

<dependencies>
    <dependency>
            <groupId>org.jacorb</groupId>
            <artifactId>jacorb</artifactId>
            <version>3.3</version>
            <exclusions>
                <exclusion>
                    <groupId>antlr</groupId>
                    <artifactId>antlr</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>org.apache.ant</groupId>
                    <artifactId>ant</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>picocontainer</groupId>
                    <artifactId>picocontainer</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>org.slf4j</groupId>
                    <artifactId>slf4j-api</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>org.slf4j</groupId>
                    <artifactId>slf4j-jdk14</artifactId>
                </exclusion>
    </exclusions>
    </dependency>
    <dependency>
            <groupId>org.jacorb</groupId>
            <artifactId>jacorb-services</artifactId>
            <version>3.3</version>
            <exclusions>
                <exclusion>
                    <groupId>antlr</groupId>
                    <artifactId>antlr</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>org.apache.ant</groupId>
                    <artifactId>ant</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>picocontainer</groupId>
                    <artifactId>picocontainer</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>org.slf4j</groupId>
                    <artifactId>slf4j-api</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>org.slf4j</groupId>
                    <artifactId>slf4j-jdk14</artifactId>
                </exclusion>
    </exclusions>
    </dependency>
</dependencies>
</project>

Локально установите этот пакет с:

mvn clean install

В eclipse-mil.jpeojtrs.sca/releng/pom.xml удалите ссылку на репозиторий redhawk.sdr.org jacorb в разделе project.properties. Удалите репозиторий jacorb p2 из раздела project.repositories.

В конфигурации целевой платформы вам нужно будет использовать первую сборку Tycho POM, на которую ссылается Эрик, которая в итоге будет выглядеть следующим образом (обратите внимание на жирную линию):

<plugin>
    <groupId>org.eclipse.tycho</groupId>
    <artifactId>target-platform-configuration</artifactId>
    <version>${tycho-version}</version>
    <configuration>
      **<pomDependencies>consider</pomDependencies>**
      <environments>
        <environment>
          <os>linux</os>
          <ws>gtk</ws>
          <arch>x86</arch>
        </environment>

В mil.jpeojtrs.sca/plugins/idl.cf/META-INF/MANIFEST.MF удалите требование к комплекту для jacorb. Достаточно того, что он импортирует пакет COsEventChannelAdmin, поскольку пакет уже установлен локально.

Наконец, перейдите на mil.jpeojtrs.sca/releng и запустите

mvn clean package

Просто помните, что если вы используете maven3.1 или новее, вам нужно изменить версию tycho в файле POM на 18.1

Наконец, установите zip-файл как архив в eclipse, и вы должны быть полностью заняты установкой mil.jpeojtrs.sca.

К сожалению... это не поможет вам с вашим первоначальным вопросом, потому что я не могу оставлять комментарии...

Другие вопросы по тегам