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

OSGi中包版本和包版本之间的关系是什么

黄磊
2023-03-14

在OSGi bundles中,用一个版本号导出和导入包。包仍然定义了一个版本。这在我看来是多余的。

共有1个答案

史懿轩
2023-03-14

在OSGi中,包定义了用来让包协作的契约。bundle是存放代码的罐子。

  • 包版本的目的是确保包只依赖/使用与其兼容的契约。包使用语义版本控制来表示微小的、微小的和主要的更改。包可以导出和导入任意数量的包,并提供和使用任意数量的合同。
  • 包版本的目的是为每个JAR提供唯一的标识符,以便在开发生命周期中处理它。SHA代码也可以工作,但不太方便。有些组织会根据包中的最大变化来修改包版本。即。如果其包含的包仅有较小的更改,则包将会被一个较小的更改所颠簸。如果一个包发生了重大更改,则包束将被颠簸为重大。
 类似资料:
  • 使用1.01.0等捆绑版本合法吗?找不到有关如何工作的任何信息。我使用OSGI的Apache Felix实现。

  • 我正在使用Maven构建一个Hadoop项目,并在http://search.Maven.org/中搜索依赖项。 Hadoop-common的结果只包括版本0.2x和2.x,那么版本1.x呢? 希望得到详细的解释。

  • 本文向大家介绍spring boot和spring cloud之间的版本关系,包括了spring boot和spring cloud之间的版本关系的使用技巧和注意事项,需要的朋友参考一下 什么是Spring Boot Spring Boot简化了基于Spring的应用开发,通过少量的代码就能创建一个独立的、产品级别的Spring应用。 Spring Boot为Spring平台及第三方库提供开箱即用

  • 我遇到了一个关于OSGI包和“普通”maven jar依赖关系的问题。 A.M是普通的java应用程序,它启动OSGI框架并加载包。 在项目顶层pom(a.pom)中,我定义了一个commons-logging-1.1.1的依赖项,然后在OSGI包a.x中使用commons-logging。maven-bundle-plugin为a.x生成清单,其中包含一个发生“commons-logging”的

  • 我正在使用Android Studio (Canary) 2.1 Preview 4。 当我试图改变 到 我收到对话消息 “该项目使用的是不兼容版本的Android Gradle插件” Android Studio建议将其改回 更新: 但是我可以设置。我不能设置。 看起来AS版本和Gradle版本之间有任何关系。如何在AS 2.1中设置gradle verosn?

  • 我的项目有两个OSGi包(A和B),它们需要使用不同版本的-A需要1.1.0版本,而B需要1.1.1版本。 如果我在这个sling.properties文件中给出的javax.activation的版本大于1.1.1,那么a和B都使用系统版本(尽管文件中指定了import-packages的版本);但如果我给出的版本小于1.1.1,那么两个包都使用AEM提供的版本。 如何配置我的Bundle,以便