首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在每个Apache Felix发行版中实现了哪个版本的OSGi规范?

在每个Apache Felix发行版中实现了OSGi规范的最新版本。Apache Felix是一个开源的OSGi框架实现,它遵循OSGi联盟制定的规范,并提供了一套用于构建模块化、可扩展和动态的Java应用程序的工具和库。OSGi规范定义了一种基于模块化的架构,允许开发人员将应用程序拆分为独立的组件,这些组件可以动态地安装、卸载、更新和交互。

OSGi规范经过多个版本的迭代和更新,每个版本都引入了新的功能和改进。Apache Felix作为一个遵循OSGi规范的框架实现,会在每个发行版中实现最新版本的OSGi规范,以确保开发人员可以使用最新的功能和特性。

由于没有提及具体的Apache Felix发行版,无法确定实现的是哪个具体版本的OSGi规范。建议在使用Apache Felix时,查阅相关文档或官方网站以获取具体发行版所实现的OSGi规范版本信息。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

OSGI实现——Felix

Apache Felix Felix是一个OSGi版本4规范Apache实现OSGi是一个基于Java服务平台规范,其目标是被需要长时间运行、动态更新、对运行环境破坏最小化系统所使用。...目前Felix已经实现OSGI R4规范大部分内容。...felix官方地址为 http://felix.apache.org/site/index.html 想下载felix及它子工程可以到 http://felix.apache.org/site/downloads.cgi...复制解压后felix目录内容到工程。完成后目录如下所示: ? 将felix.jar添加到工程目录,选择Build Path->Add to Build Path ?...环境和工程都已经完成,下面安装和卸载一下工程felix 启动FelixConsole先使用install命令安装bundle,接着使用start命令启动bundle。 ?

1.6K90

初识OSGI

选型 技术没有银弹,目前没有完全确定要使用OSGI方式来实现,因为本人之前使用Spring Cloud & Spring Cloud Alibaba各实现一种demo, 当然也可以实现我们服务化,...官方联盟维护基于JAVA语言服务规范规范和核心部分是一个框架,其中定义应用程序生命周期模式和服务注册。...目前使用最广两款OSGI 框架: Apache Felix Apache FelixApache旗下一个OSGi框架,项目本身非常成熟,已经被用到了很多其他项目中,例如Apache Servicemix...除了Felix,还有两个项目是和OSGi相关。一个是Apache Felix Karaf,它本身是Felix一个子项目,但他其实是封装了Felix提供更高一层Runtime,例如提供JAAS。...另一个是Apache Aries,目前还处于起步阶段,它作为Felix补充,提供OSGi企业级规范,包括JPA、JDBC、JTA、JNDI等等。

1.2K20

用JavaOSGi框架构建灵活模块化应用

引言现代软件开发构建可扩展、可管理和可升级应用程序是一项关键任务为了满足这一需求JavaOSGi(Open Service Gateway Initiative)框架提供一种模块化解决方案本文将介绍...一、OSGi框架概述OSGi是一种面向服务模块化框架它将应用程序划分为多个独立、可重用模块每个模块被称为一个bundle每个bundle都有自己生命周期、类加载器和依赖管理机制OSGi框架提供动态部署...BundleActivator接口它是一个OSGi bundle生命周期管理接口start方法我们注册GreetingService服务以便其他bundle可以使用它stop方法用于bundle...OSGi容器常见OSGi容器有Apache Felix和Eclipse Equinox我们选择使用Apache Felix作为示例。...首先,我们将上述代码编译成JAR文件并将其放入Apache Felix运行目录然后,我们启动Apache Felix容器执行以下命令:java -jar bin/felix.jarApache Felix

33540

OSGi简介

这个模型允许bundle 开发者只使用他们自己接口规范来绑定服务。这样接口实现可以根据实际情况延迟到运行时来选择。框架通过使用服务层,为系统提供一种扩展机制,成为hooks。...● 小巧:OSGi R4框架实现仅需要300KBJAR file就足够。系统引入OSGi几乎没有什么开销。 ● 非侵入式:服务可以以POJO形式实现,不需要关注特定接口。...OSGi实现与扩展 OSGi框架最著名三个实现包括Apache Felix, Equinox和Knopflerfish,这三个实现也是R4认证实现。...Apache Felix : Felix项目包含了一个OSGi R4服务平台(Service Platform)标准实现,以及大量相关OSGi功能与技术实现Felix子项目有二十多个。...当然,Felix也提供支持OSGi开发SDK,同时还提供一个bundle中央仓库。 Apache还有另外一个项目Aries,这个项目里主要基于Felix,对OSGi企业标准进行了实现

3.3K50

模块化服务规范——OSGI

现在OSGi规范已经用于从移动电话到开源Eclipse(其中包括与IBMOSGi框架SMF兼容开源版本)。...OSGi亦称做Java语言动态模块系统,它为模块化应用开发定义一个基础架构。OSGi容器已有多家开源实现,比如 Knoflerfish、Equinox和ApacheFelix。...3、由于Java EE平台规范没有针对Java package引入版本支持,这使得同一企业应用几乎不可能启用同一JAR包不同版本。...OSGI优缺点 a) 您可以不重启容器情况下,动态地安装、卸载、启动和停止您应用程序不同模块; b) 对于您应用程序某一特定模块,容器可以同时运行该模块多个版本; c) OSGi为开发嵌入式应用...详细内容可以参考 http://book.51cto.com/art/200912/173733.htm OSGI和云计算 云计算是当前比较热一个话题,个人认为,云计算实现模式osgi是一个非常好标准

1.5K30

sofa-ark类隔离技术分析调研

哎,怎么我classpath里某个包有三四个不同版本啊,跑时候到底用哪个版本啊?不管了,反正差不多,先跑跑看。 哎,我怎么直接就可以用这个类,这个类是哪个包引?...不过坏处就是缺少了灵活性,业务方无法修改组件包任何依赖。 OSGI技术 使用OSGI技术,用felix、karaf或者Jigsaw这样容器对jar包进行暴露和隔离。...Gradle5.0引入了"java-library"插件,试图让组件开发方在编写组件代码时,主动控制好自己依赖是否暴露给组件接入方(这个插件版本也有,不过只有5.0版本真正有用)。...还好蚂蚁金服给我们提供他们一个不错实践——Sofa-ark项目。 sofa-ark项目从概念上其实并没有什么石破天惊独创,可以说他就是用FatJar技术去实现OSGI功能。...可要知道,这并不是天经地义事情,通常情况下,如果要运行一个jar包,至少得满足两个条件: jar包Manifest文件要通过"Main-Class"属性,告诉jvm去启动哪个main函数。

1.6K30

OSGi模块化和动态模块好处

OSGi 应用可以一个命令行窗口下进行调试,而不用盯着百万行日志输出和很长重启时间。 8、版本控制 OSGi技术解决JAR痛苦。...JAR 包带来问题是,A库依赖版本=2B库,但是C库又依赖版本=3B库,标准java,你是非常不幸。...OSGi环境,所有的软件包都被非常仔细设定版本,只有这些包在相同类空间下它们才会被连接在一起协同工作。...14、非独占性 许多应用框架运行时需要独占整个VM,且每个虚拟机上仅仅允许允许一个应用实例。这时就体现出了OSGi规范灵活性,它甚至可以J2EE应用服务器运行。...一是OSGi API应该使用能在所有环境中都有效类;二是如果bundle包含了某个执行环境无效代码,那么这个bundle就不能在该环境启动。OSGi规范,这两个问题都得到了解决。

1.5K10

ODL应用开发之MD-SAL中级教程

Opendaylight 开发使用了OSGi框架,OSGi框架好处在于程序设计模块化,实现紧聚合和松耦合。 Apache Karaf 是一个OSGi容器,它可以支持部署新应用。...version确定版本号,自己定义一个,OSGi解析版本号默认是三位,这个具体请参考规范,一般初始版本写成0.0.1吧。...这些就是我前面说parent根模块作用,parent根模块pom.xml文件定义这些变量,maven会自动去解析替换,至于这些版本应该定义成多少,或者说ODL提供那些版本,我们可以http...version确定版本号,自己定义一个,OSGi解析版本号默认是三位,这个具体请参考规范,一般初始版本写成0.0.1吧。...这些就是我前面说parent根模块作用,parent根模块pom.xml文件定义这些变量,maven会自动去解析替换,至于这些版本应该定义成多少,或者说ODL提供那些版本,我们可以http

2.8K80

基于spring-plugin做插件化开发

插件化开发使得应用程序具有高度可扩展性和灵活性,可以根据需要添加或删除功能,而无需修改核心代码。 插件化开发,应用程序核心框架或主程序通常提供一组基本功能和接口,供插件进行扩展。...它定义模块、生命周期管理、依赖管理等概念,可以在运行时动态加载、卸载和更新模块。 Apache Felix:是一个由Apache软件基金会开发基于OSGi标准开源项目。...JPF 提供插件扩展点定义、加载、卸载等功能,支持插件之间依赖关系和版本管理。...spring-plugin是一种更实用插件开发方法,它提供插件实现扩展核心系统功能核心灵活性,但当然不提供核心OSGi功能,如动态类加载或插件运行时安装和部署。...,然后主项目服务手动或者自动方式触发热加载,不重启前提下加载插件能力到运行空间,目前还没有很好实现

2.3K20

OpenDaylight系列文章(二):OpenDaylight初窥(上篇)之OpenDaylight工程技术架构

然后施工现场通过钢筋连接、焊接等方式进组装,最终建成整体建筑。 这个大家一看就明了,说白就像积木游戏。呃,这样说来,OpenDaylight实现岂不就是搭积木。。。说好高大上呢。。。...OSGI框架规范下,OpenDaylight这栋高楼大厦是怎么建设起来呢? OpenDaylight功能组件(feature)有很多。...KARAF---OpenDaylight“建筑主体” KARAF:是Apache旗下开源项目,同时也是一个基于OSGI运行环境,可以用于部署各种组件和应用程序。...OpenDaylight控制器从HELIUM版本开始使用karaf作为底层架构。 KARAF提供一个基础容器功能,OSGI“装配式技术规范”下它就像是建筑主体。...而OSGI框架和KARAF容器可以实现功能组件即插即用,保证ODL控制器体态匀称、身形灵活。 Maven---OpenDaylight“构件工厂” Maven: 项目管理工具。

1K50

微内核架构(Microkernel Architecture)二

2.2.2 OSGi 规范 这个规范核心是一个框架,定义应用程序生命周期模式和服务注册。...特点: 可以动态加载、更新和卸载模块而不用停止服务 实现系统模块化、版本化,允许多版本 bundule 同时服务 Service model 允许模块/插件相互依赖但松耦合,分享服务更简单 2.3 OSGi...OSGi 插件被称为 Bundle,每个 Bundle 是一个 Java JAR 文件,每个 Bundle 里面都包含一个元数据文件 MANIFEST.MF,这个文件包含了 Bundle 基本信息...生命周期层精确地定义 Bundle 生命周期操作(安装、更新、启动、停止、卸载),Bundle 必须按照规范实现各个操作。 2.3.4 服务层(Service) 服务层实现插件通信功能。...规则引擎计费、保险、促销等业务领域有广泛应用,能够很灵活地应对复杂规则场景需求,主要原因: 易扩展:规则引擎使业务逻辑实现与业务系统分离,可以不改动业务系统情况下扩展新业务功能; 易理解:规则通过自然语言描述

77730

OSGi类加载器架构和特性,对比其他类加载器优势

OSGi类加载器架构和特性OSGi(Open Service Gateway Initiative)是一种动态模块化系统规范,它提供一种插件化架构,使得应用程序可以动态地加载、卸载和管理模块。...版本管理: OSGi用模块版本来标识和管理不同模块,每个模块都有一个唯一版本号。这使得可以同时存在多个相同模块不同版本,并且可以根据需要动态地加载、卸载和切换模块。...模块隔离性: OSGi类加载器架构提供模块之间隔离性。每个模块都有自己独立类加载器,它只加载属于模块类和资源。这种隔离性可以防止模块之间类冲突和版本冲突。...模块隔离性: OSGi类加载器架构提供模块之间隔离性。每个模块有自己独立类加载器,它只加载属于模块类和资源。这种隔离性可以防止模块之间类冲突和版本冲突,提高了应用程序稳定性和可靠性。...开放标准: OSGi是一个开放规范,有许多不同实现可供选择。这使得开发人员可以根据自己需求选择合适实现,并且可以与其他开放标准和技术进行整合,提供更强大和灵活功能。

34961

JVM真香系列:轻松理解class文件到虚拟机(下)

上面我们自定义一个String出了问题,问题在于JVM不知道我们想用哪个类,于是JVM就定义规范。 把这种类装载器分成几类。...OSGi 是服务平台规范,旨在用于需要长运行时间、动态更新和对运行环境破坏最小系统。 OSGi 规范定义很多关于包生命周期,以及基础架构和绑定包交互方式。...但是,OSGi 类加载器基于 OSGi 规范每个绑定包 manifest.mf 文件中指定选项,来限制这些类交互,这就让编程风格变得非常怪异。...随着 jigsaw 发展(旨在为 Java SE 平台设计、实现一个标准模块系统),我个人认为,现在 OSGi,意义已经不是很大。...OSGi 是一个庞大的话题,你只需要知道,有这么一个复杂东西,实现模块化,每个模块可以独立安装、启动、停止、卸载,就可以

40220
领券