【问题标题】:Tycho error with bundle requirement捆绑要求的第谷错误
【发布时间】:2023-04-03 11:21:01
【问题描述】:

我正在使用 tycho 进行构建过程。

这个项目是一个 RCP 应用程序,带有 tycho 0.21.0 和 Java 1.6 编译器。

这个项目使用了 europa 插件和功能,为了解决这个问题,我使用 featuresandbundles 发布者并将这个文件放在 Nexus 中。

在我的项目中,我有:

aggregator_project 父项目 特征项目 存储库项目

我正在向您发送附加的 pom 项目。

当我执行命令 mvn clean install 时,tycho 显示如下错误:

[ERROR]   Software being installed: com.soluzionasf.zeus 1.0.0
[ERROR]   Missing requirement: com.soluzionasf.zeus 1.0.0 requires 'bundle com.soluzionasf.arqw10.common 1.0.0' but it could not be found
[ERROR] 
[ERROR] Internal error: java.lang.RuntimeException: No solution found because the problem is unsatisfiable.: [Unable to satisfy dependency from com.soluzionasf.zeus 1.0.0 to bundle com.soluzionasf.arqw10.common 1.0.0.; Unable to satisfy dependency from com.soluzionasf.zeus.bdi 1.0.0 to bundle com.soluzionasf.arqw10.common 0.0.0.; Unable to satisfy dependency from com.soluzionasf.zeus.bdi.lib 1.0.0 to bundle com.soluzionasf.arqw10.common 0.0.0.; Unable to satisfy dependency from com.soluzionasf.zeus.bdi.ui 1.0.0 to bundle com.soluzionasf.arqw10.common 0.0.0.; Unable to satisfy dependency from com.soluzionasf.zeus.common 1.0.0 to bundle com.soluzionasf.arqw10.common 0.0.0.; Unable to satisfy dependency from com.soluzionasf.zeus.common.lib 1.0.0 to bundle com.soluzionasf.arqw10.common 0.0.0.; Unable to satisfy dependency from com.soluzionasf.zeus.common.ui 1.0.0 to bundle com.soluzionasf.arqw10.common 0.0.0.; Unable to satisfy dependency from com.soluzionasf.zeus.fieldservice.lib 1.0.0 to bundle com.soluzionasf.arqw10.common 0.0.0.; Unable to satisfy dependency from com.soluzionasf.zeus.igeautils 1.0.0 to bundle com.soluzionasf.arqw10.common 0.0.0.; Unable to satisfy dependency from com.soluzionasf.zeus.operation.lib 1.0.0 to bundle com.soluzionasf.arqw10.common 0.0.0.; Unable to satisfy dependency from com.soluzionasf.zeus.operation.ui.common 1.0.0 to bundle com.soluzionasf.arqw10.common 0.0.0.; No solution found because the problem is unsatisfiable.] -> [Help 1]
org.apache.maven.InternalErrorException: Internal error: java.lang.RuntimeException: No solution found because the problem is unsatisfiable.: [Unable to satisfy dependency from com.soluzionasf.zeus 1.0.0 to bundle com.soluzionasf.arqw10.common 1.0.0.; Unable to satisfy dependency from com.soluzionasf.zeus.bdi 1.0.0 to bundle com.soluzionasf.arqw10.common 0.0.0.; Unable to satisfy dependency from com.soluzionasf.zeus.bdi.lib 1.0.0 to bundle com.soluzionasf.arqw10.common 0.0.0.; Unable to satisfy dependency from com.soluzionasf.zeus.bdi.ui 1.0.0 to bundle com.soluzionasf.arqw10.common 0.0.0.; Unable to satisfy dependency from com.soluzionasf.zeus.common 1.0.0 to bundle com.soluzionasf.arqw10.common 0.0.0.; Unable to satisfy dependency from com.soluzionasf.zeus.common.lib 1.0.0 to bundle com.soluzionasf.arqw10.common 0.0.0.; Unable to satisfy dependency from com.soluzionasf.zeus.common.ui 1.0.0 to bundle com.soluzionasf.arqw10.common 0.0.0.; Unable to satisfy dependency from com.soluzionasf.zeus.fieldservice.lib 1.0.0 to bundle com.soluzionasf.arqw10.common 0.0.0.; Unable to satisfy dependency from com.soluzionasf.zeus.igeautils 1.0.0 to bundle com.soluzionasf.arqw10.common 0.0.0.; Unable to satisfy dependency from com.soluzionasf.zeus.operation.lib 1.0.0 to bundle com.soluzionasf.arqw10.common 0.0.0.; Unable to satisfy dependency from com.soluzionasf.zeus.operation.ui.common 1.0.0 to bundle com.soluzionasf.arqw10.common 0.0.0.; No solution found because the problem is unsatisfiable.]
    at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:168)
    at org.apache.maven.cli.MavenCli.execute(MavenCli.java:537)
    at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196)
    at org.apache.maven.cli.MavenCli.main(MavenCli.java:141)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230)
    at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409)
    at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352)
Caused by: java.lang.RuntimeException: No solution found because the problem is unsatisfiable.: [Unable to satisfy dependency from com.soluzionasf.zeus 1.0.0 to bundle com.soluzionasf.arqw10.common 1.0.0.; Unable to satisfy dependency from com.soluzionasf.zeus.bdi 1.0.0 to bundle com.soluzionasf.arqw10.common 0.0.0.; Unable to satisfy dependency from com.soluzionasf.zeus.bdi.lib 1.0.0 to bundle com.soluzionasf.arqw10.common 0.0.0.; Unable to satisfy dependency from com.soluzionasf.zeus.bdi.ui 1.0.0 to bundle com.soluzionasf.arqw10.common 0.0.0.; Unable to satisfy dependency from com.soluzionasf.zeus.common 1.0.0 to bundle com.soluzionasf.arqw10.common 0.0.0.; Unable to satisfy dependency from com.soluzionasf.zeus.common.lib 1.0.0 to bundle com.soluzionasf.arqw10.common 0.0.0.; Unable to satisfy dependency from com.soluzionasf.zeus.common.ui 1.0.0 to bundle com.soluzionasf.arqw10.common 0.0.0.; Unable to satisfy dependency from com.soluzionasf.zeus.fieldservice.lib 1.0.0 to bundle com.soluzionasf.arqw10.common 0.0.0.; Unable to satisfy dependency from com.soluzionasf.zeus.igeautils 1.0.0 to bundle com.soluzionasf.arqw10.common 0.0.0.; Unable to satisfy dependency from com.soluzionasf.zeus.operation.lib 1.0.0 to bundle com.soluzionasf.arqw10.common 0.0.0.; Unable to satisfy dependency from com.soluzionasf.zeus.operation.ui.common 1.0.0 to bundle com.soluzionasf.arqw10.common 0.0.0.; No solution found because the problem is unsatisfiable.]
    at org.eclipse.tycho.p2.util.resolution.AbstractResolutionStrategy.newResolutionException(AbstractResolutionStrategy.java:98)
    at org.eclipse.tycho.p2.util.resolution.ProjectorResolutionStrategy.resolve(ProjectorResolutionStrategy.java:88)
    at org.eclipse.tycho.p2.util.resolution.AbstractResolutionStrategy.resolve(AbstractResolutionStrategy.java:63)
    at org.eclipse.tycho.p2.resolver.P2ResolverImpl.resolveDependencies(P2ResolverImpl.java:166)
    at org.eclipse.tycho.p2.resolver.P2ResolverImpl.resolveDependencies(P2ResolverImpl.java:103)
    at org.eclipse.tycho.p2.resolver.P2DependencyResolver.doResolveDependencies(P2DependencyResolver.java:352)
    at org.eclipse.tycho.p2.resolver.P2DependencyResolver.resolveDependencies(P2DependencyResolver.java:325)
    at org.eclipse.tycho.core.resolver.DefaultTychoResolver.resolveProject(DefaultTychoResolver.java:107)
    at org.eclipse.tycho.core.maven.TychoMavenLifecycleParticipant.afterProjectsRead(TychoMavenLifecycleParticipant.java:75)
    at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:274)
    at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156)

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

    <parent>
        <groupId>com.example</groupId>
        <artifactId>zeus.parent</artifactId>
        <version>1.0.0-SNAPSHOT</version>
        <relativePath>../com.example.zeus.parent</relativePath>
    </parent>

    <artifactId>zeus.feature</artifactId>
    <packaging>eclipse-feature</packaging>

</project>

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

    <artifactId>zeus.repository</artifactId>
    <packaging>eclipse-repository</packaging>

    <parent>
        <groupId>com.example</groupId>
        <artifactId>zeus.parent</artifactId>
        <version>1.0.0-SNAPSHOT</version>
        <relativePath>../com.example.zeus.parent</relativePath>
    </parent>

    <build>
        <plugins>
            <plugin>
                <groupId>org.eclipse.tycho</groupId>
                <artifactId>tycho-p2-director-plugin</artifactId>
                <version>${tycho.version}</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>

parent.xml aggregator.xml

有人有办法解决这个问题吗?

【问题讨论】:

  • 如何声明对 com.soluzionasf.arqw10.common 的依赖?您使用“必需插件”还是“导入包”
  • 我是这个主题的新手,但我会尝试解释一下。据我了解,我拥有对 MANIFEST 文件的所有控制依赖项。但依赖项也在 plugin.xml 文件中。在这种情况下,有一个名为 com.soluzionasf.zeus 的项目,具体取决于 com.soluzionasf.arqw10.common。

标签: maven tycho


【解决方案1】:

我发现了错误原因:

访问项目 com.soluzionasf.arqw10.common 并打开 pom.xml 文件,我发现它是这样的:

<groupId> com.soluzionasf.arqw10.common </ groupId>
<artifactId> com.soluzionasf.arqw10.common </ artifactId>
<version> 1.0.0-SNAPSHOT </ version>
<packaging> jar </ packaging>

正确的是:

<groupId> com.soluzionasf.arqw10.common </ groupId>
<artifactId> com.soluzionasf.arqw10.common </ artifactId>
<version> 1.0.0-SNAPSHOT </ version>
<packaging> eclipse-plugin </ packaging>

【讨论】:

    猜你喜欢
    • 2015-08-18
    • 1970-01-01
    • 1970-01-01
    • 2013-06-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-08-16
    • 2019-10-31
    相关资源
    最近更新 更多