当前位置: 首页 > 知识库问答 >
问题:

无法生成程序集:无法解析根:缺少karaf bundle插件的要求

蔡理
2023-03-14

我用maven-bundle-plugin创建了一个示例bundle项目,并创建了以下MANIFEST. MF:

Manifest-Version: 1.0
Bnd-LastModified: 1486554665411
Build-Jdk: 1.8.0_121
Bundle-Description: Helper classes
Bundle-ManifestVersion: 2
Bundle-Name: core.util
Bundle-SymbolicName: core.util
Bundle-Version: 1.0.0.SNAPSHOT
Created-By: Apache Maven Bundle Plugin
Export-Package: com.example.core.util;version="1.0.0",com.example.core.util.ex
 tension;version="1.0.0"
Originally-Created-By: Apache Maven Bundle Plugin
Require-Capability: osgi.ee;filter:="(&(osgi.ee=JavaSE)(version=1.8))"
Tool: Bnd-3.2.0.201605172007

现在,我已经添加了该捆绑包作为与maven-karaf-plugin组装构建的依赖项:

<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.example</groupId>
    <artifactId>example-karaf-dist</artifactId>
    <version>1.0.1-SNAPSHOT</version>
    <packaging>karaf-assembly</packaging>

    <dependencies>

(...)

        <dependency>
          <groupId>com.example</groupId>
          <artifactId>core.util</artifactId>
          <version>${taxcloud.version}</version>
        </dependency>

    </dependencies>

    <build>
        <plugins>       
            <plugin>
                <groupId>org.apache.karaf.tooling</groupId>
                <artifactId>karaf-maven-plugin</artifactId>
                <version>4.0.7</version>
                <extensions>true</extensions>
                <configuration>
                    <bootFeatures>
                        <feature>standard</feature>
                        <feature>webconsole</feature>
                    </bootFeatures>
                </configuration>
            </plugin>
        </plugins>
    </build>
</project>

但是,由于出现以下错误,我无法生成:

无法执行目标组织。阿帕奇。卡拉夫。工具:karaf maven插件:4.0.7:项目示例上的程序集(默认程序集):karaf dist:无法构建程序集:无法解析根:缺少需求[root]osgi。身份奥斯基。身份=核心。util;type=osgi。捆version=“[1.0.0.快照,1.0.0.快照]”;解析:=必需[原因:无法解析core.util/1.0.0.SNAPSHOT:缺少需求[core.util/1.0.0.SNAPSHOT]osgi。ee;过滤器:=”(

我未能理解错误消息,这里找不到什么?我在1.0.0版中core.util了捆绑包。SNAPSHOT,所以一切都应该正常。这里有什么问题?我如何在karaf程序集中包含我的捆绑包?

共有1个答案

许阿苏
2023-03-14

据我所知,karaf-maven插件的karaf组装目标是从引用的特征描述符中进行分发。要做到这一点,首先制作一个包含您的捆绑包定义和所需特征定义的特征描述符,然后使用该特征描述符作为karaf组装pom的依赖项。所以我认为问题是你的捆绑包直接被定义为正常依赖项。

 类似资料:
  • 我无法在 Karaf(版本 3.0.1)中启动捆绑包。 该捆绑包使用maven构建,并导入gson。 我根据需要将gson包含在maven中: 构建运行良好。但是,在部署捆绑包时,我收到了来自Karaf的警告: 捆绑包未安装。 中的导入包开头为: 我试图改变它: 但它给了我一个类似的错误: pom.xml代码: (我构建捆绑包时maven下载的版本)是: 我也试过 现在依赖项已经嵌入,但是Kara

  • 问题内容: 我无法在Karaf(版本3.0.1)中启动捆绑包。 该捆绑包使用maven构建,并导入gson。 我根据需要将gson包括在maven中: 构建顺利。但是,在部署捆绑软件时,我从Karaf收到此警告: 未安装捆绑软件。 在中开头: 我尝试使用以下方法进行更改: 但这给了我一个类似的错误: 的: 在谷歌GSON(版本Maven同时下载时,我建的软件包)是: 我也尝试过 现在已嵌入依赖项,

  • 我正在使用IntelliJ IDEA,并且我尝试通过maven安装依赖项,但它给了我以下错误: 我搜索过类似的问题,但它们都指代理问题,但是, 我可以在没有代理的情况下通过浏览器访问这些插件,我也尝试在IntelliJ IDEA中配置代理,但它也不起作用。 日志文件: 在通过intellij和bash成功编译和构建之后,仍然存在两个错误 这意味着什么以及如何修复读取依赖项中剩余的错误?

  • 我是Java EE和Maven的新手,所以我不确定需要哪些信息才能看到我犯了错误。 当我右键单击我的项目并进入Maven-->Reload project时,build选项卡打开,出现以下错误 当我悬停maven assembly插件时,IDE还告诉我 如果我需要任何进一步的信息,请告诉我。

  • 我正在使用Envers来审核表,但它正在为未知/不存在的表创建一些审核表。它看起来像多对一关系的多对多关系审计表。 这是对的吗?如果是,为什么? 但当我尝试删除和HorarioFixo时,我遇到了一个错误。 我收到的错误: 这是SQL重复: 所有这些都是代码的一部分。如果你需要更多,请留下评论。 我的班级: 我的映射: 新罕布什尔州和恩维尔斯配置:

  • 在发送请求消息并获取有效负载数据(json)后,我想从gitlab应用程序中获取json数据,我使用postman chrome插件将内容附加到了该应用程序中。 我得到的错误如下。 标题内容 身体内容 我的Spring集成程序如下所示。我引用了链接。我从标题收到的标题中没有标题值。