Tycho игнорирует хранилище p2 - PullRequest
1 голос
/ 13 октября 2011

У меня есть проблема, которая сводит меня с ума: Tycho игнорирует все репозитории p2, которые я добавил в POM.Вот соответствующая часть POM:

<properties>
    <tycho-version>0.13.0</tycho-version>
</properties>

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

<profiles>
    <!-- Fix for Eclipse maven plugin which insists to mix its output with Eclipse's -->
    <profile>
        <id>eclipse-folders</id>
        <properties>
            <target.dir>target-eclipse</target.dir>
        </properties>
    </profile>
</profiles>

<build>
    <sourceDirectory>src</sourceDirectory>
    <directory>${basedir}/${target.dir}</directory>
    <outputDirectory>${basedir}/${target.dir}/classes</outputDirectory>
    <testOutputDirectory>${basedir}/${target.dir}/test-classes</testOutputDirectory>

    <plugins>
        <plugin>
            <artifactId>maven-compiler-plugin</artifactId>
            <configuration>
                <!-- Compile with Java 5 -->
                <source>${compileSource}</source>
                <target>${compileSource}</target>
                <compilerArguments>
                    <g />
                </compilerArguments>
            </configuration>
        </plugin>

        <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>
                <resolver>p2</resolver>
                <environments>
                    <environment>
                        <os>linux</os>
                        <ws>gtk</ws>
                        <arch>x86</arch>
                    </environment>
                    <environment>
                        <os>linux</os>
                        <ws>gtk</ws>
                        <arch>x86_64</arch>
                    </environment>
                    <environment>
                        <os>win32</os>
                        <ws>win32</ws>
                        <arch>x86</arch>
                    </environment>
                    <environment>
                        <os>win32</os>
                        <ws>win32</ws>
                        <arch>x86_64</arch>
                    </environment>
                    <environment>
                        <os>macosx</os>
                        <ws>cocoa</ws>
                        <arch>x86_64</arch>
                    </environment>
                </environments>
            </configuration>
        </plugin>
    </plugins>

    <pluginManagement>
        <plugins>
            <plugin>
                <artifactId>maven-clean-plugin</artifactId>
                <version>2.4.1</version>
            </plugin>
            <plugin>
                <artifactId>maven-resources-plugin</artifactId>
                <version>2.4.3</version>
            </plugin>
            <plugin>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>2.3.2</version>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-source-plugin</artifactId>
                <version>2.1.2</version>
            </plugin>
        </plugins>
    </pluginManagement>
</build>

<distributionManagement>
    <!-- use the following if you're not using a snapshot version. -->
    <repository>
        <id>releases</id>
        <name>Releases</name>
        <url>local URL</url>
    </repository>
    <!-- use the following if you ARE using a snapshot version. -->
    <snapshotRepository>
        <id>snapshots</id>
        <name>Snapshots</name>
        <url>local URL</url>
    </snapshotRepository>
</distributionManagement>

В выводе я никогда не вижу [INFO] Resolving target platform for project MavenProject или [INFO] Adding repository <a href="http://download.eclipse.org/releases/indigo/" rel="nofollow">http://download.eclipse.org/releases/indigo/</a>

Почему бы и нет?Если я собираю Tycho из http://git.eclipse.org/gitroot/tycho/org.eclipse.tycho.git,, он работает, поэтому он не связан с моим settings.xml.Я также попробовал Tycho 0.12.0 с тем же результатом.

Интересная часть вывода моей сборки:

[INFO] Error stacktraces are turned on.
[DEBUG] Reading global settings from /home/adigulla/packages/apache-maven-3.0.3/conf/settings.xml
[DEBUG] Reading user settings from /home/adigulla/.m2/settings.xml
[DEBUG] Using local repository at /home/adigulla/.m2/repository
[DEBUG] Using manager EnhancedLocalRepositoryManager with priority 10 for /home/adigulla/.m2/repository
[INFO] Scanning for projects...
[DEBUG] org.eclipse.tycho:tycho-maven-plugin:jar:0.13.0:
[DEBUG]    org.eclipse.tycho:tycho-core:jar:0.13.0:compile
...
[DEBUG] Extension realms for project com.avanon.tycho:parent:pom:0.0.1-SNAPSHOT: [ClassRealm[extension>org.eclipse.tycho:tycho-maven-plugin:0.13.0, parent: sun.misc.Launcher$AppClassLoader@4aad3ba4]]
[DEBUG] Created new class realm project>com.avanon.tycho:parent:0.0.1-SNAPSHOT
[DEBUG] Populating class realm project>com.avanon.tycho:parent:0.0.1-SNAPSHOT
[DEBUG] Looking up lifecyle mappings for packaging pom from ClassRealm[project>com.avanon.tycho:parent:0.0.1-SNAPSHOT, parent: ClassRealm[maven.api, parent: null]]
[DEBUG] Extension realms for project de.itemis.xtext:typesystem:jar:2.0.0.2: [ClassRealm[extension>org.eclipse.tycho:tycho-maven-plugin:0.13.0, parent: sun.misc.Launcher$AppClassLoader@4aad3ba4]]
[DEBUG] Looking up lifecyle mappings for packaging jar from ClassRealm[project>com.avanon.tycho:parent:0.0.1-SNAPSHOT, parent: ClassRealm[maven.api, parent: null]]
...
[DEBUG] === PROJECT BUILD PLAN ================================================
[DEBUG] Project:       com.avanon.tycho:parent:0.0.1-SNAPSHOT
[DEBUG] Dependencies (collect): []
[DEBUG] Dependencies (resolve): []
[DEBUG] Repositories (dependencies): [indigo (http://download.eclipse.org/releases/indigo, disabled), Nexus (http://nexus:8082/nexus/content/groups/public2, releases)]
[DEBUG] Repositories (plugins)     : [Nexus (http://nexus:8082/nexus/content/groups/public2, releases)]

Как видите, Tycho распознается, но говорит indigo (http://download.eclipse.org/releases/indigo, disabled),Почему?

Ответы [ 2 ]

3 голосов
/ 18 октября 2011

Игорь Федоренко из команды Тихо обнаружил проблему.В модулях я использовал

<packaging>jar</packaging>

вместо

<packaging>eclipse-plugin</packaging>
0 голосов
/ 17 октября 2011

Вы пробовали включить релизы и снимки?

<repository>
   <id>indigo</id>
   <layout>p2</layout>
   <url>http://download.eclipse.org/releases/indigo/</url>
   <releases>
      <enabled>true</enabled>
   </releases>
   <snapshots>
      <enabled>true</enabled>
   </snapshots>
</repository>

А какая у вас командная строка при вызове Maven? Также вы говорите, что когда вы «собираете Tycho из github», значит ли это, что вы используете встроенный в Mee / Tycho m2e внутри Eclipse?

...