OSGi 正在参加 2020 年度 OSC 中国开源项目评选,请投票支持!
OSGi 在 2020 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
投票让它出道
已投票
OSGi 获得 2020 年度 OSC 中国开源项目评选「最佳人气项目」 !
OSGi 获得 2020 年度 OSC 中国开源项目评选「最佳人气项目」「最积极运营项目」 !
OSGi 获得 2020 年度 OSC 中国开源项目评选「最积极运营项目」 !
授权协议 未知
开发语言 Java
操作系统 跨平台
软件类型 开源软件
所属分类 程序开发OSGi 框架
开发厂商 JBoss
地区 不详
提 交 者 红薯
适用人群 未知
收录时间 2009-03-02

软件简介

OSGi 技术是面向Java的动态模型系统。OSGi服务平台向Java提供服务,这些服务使Java成为软件集成和软件开发的首选环境。 Java提供在多个平台支持产品的可移植性。OSGi技术提供允许应用程序使用精炼、可重用和可协作的组件构建的标准化原语。 这些组件能够组装进一个应用和部署中。

OSGi服务平台提供在多种网络设备上无需重启的动态改变构造的功能。 为了最小化耦合度和促使这些耦合度可管理,OSGi技术提供一种面向服务的架构,它能使这些组件动态地发现对方。OSGi联盟已经开发了为例如象HTTP 服务器、配置、日志、安全、用户管理、XML等很多公共功能标准组件接口。这些组件的兼容性插件实现可以从进行了不同优化和使用代价的不同计算机服务提供 商得到。然而,服务接口能够基于专有权基础上开发。

因为OSGi技术为集成提供了预建立和预测试的组件子系统,所以OSGi技术使你从改善产品上市时间和降低开发成本上获益。因为这些组件能够动态发布到设备上,所以OSGi技术也能降低维护成本和拥有独一无二的新的配件市场机会。

OSGi规范的核心组件是OSGi框架。这个框架为应用程序(被叫做组件(bundle))提供了一个标准环境。整个框架可以划分为一些层次:

  • L0: 运行环境

  • L1: 模块

  • L2: 生命周期管理

  • L3: 服务注册

    还有一个无处不在的安全系统渗透到所有层。

展开阅读全文

评论 (5)

加载中
OSGi 高手问答,大家有兴趣吗?
2013/03/12 17:04
回复
举报
下周高手问答预告 OSGi
2013/03/22 10:10
回复
举报
_-
osgiosgiosgiosgiosgiosgiosgiosgiosgiosgiosgiosgiosgiosgiosgiosgiosgiosgiosgiosgiosgiosgiosgiosgiosgiosgiosgiosgiosgiosgiosgiosgiosgi OSGi
2013/07/09 12:12
回复
举报
BlueprintListener 怎么用? #OSGi#
2015/08/25 16:17
回复
举报
OSGi是个好东西,著名的开源开发平台JXADF就是采用的OSGi架构。 #OSGi#
2015/10/09 10:37
回复
举报
更多评论
发表了资讯
2012/05/11 00:00

幻灯片:OSGi 5 的新特性

该幻灯片详细介绍了 OSGi 5 的新特性,OSGi 技术是面向Java的动态模型系统。OSGi服务平台向Java提供服务,这些服务使Java成为软件集成和软件开发的首选环境。 Java提供在多个平台支持产品的可移植性。OSGi技术提供允许应用程序使用精炼、可重用和可协作的组件构建的标准化原语。 这些组件能够组装进一个应用和部署中。 ...

0
7
发表了资讯
2009/09/26 00:00

OSGi 4.2 规范正式发布

OSGi 联盟 前天 发布了 OSGi 4.2 规范。虽然早期草稿已经早己可用,但这是最终规范发布版本。 一些 OSGi 实现,例如 Equinox 3.5 与 Felix 2.0 早已针对 OSGi 4.2 规范做了一些兼容实现,但当时 OSGi 4.2 还没有发布,当然也不能说其实现了 OSGi 4.2 规范。现在规范正式发布了,各实现团队还需要进行一些调整已完全满足规...

0
0
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
2015/04/02 18:46

OSGI

OSGI规范的核心组件是OSGI框架。这个框架为应用程序(被叫做组件(bundle))提供了一个标准环境。整个框架可以划分为一些层次: OSGI L0:运行环境 L1:模块 L2:生命周期管理 L3:服务注册[1] 还有一个无处不在的安全系统渗透到所有层。 L0层执行环境是Java环境的规范。Java2配置和子规范,像J2SE,CDC,CLDC,MIDP等等...

0
0
发表了博客
2011/05/09 13:54

OSGI

http://phoenixtoday.blogbus.com/logs/16550157.html

0
2
发表了博客
2019/05/05 14:39

OSGI浅谈

1. Java模块化的发展 osgi是Java动态模块化的标准,对Java的发展起到了推动性的作用,osgi却没有被官方认可【oracle公司想从更底层解决动态模块化面临的问题】。直到Java9中Java原生的模块化才正式上线,对jdk进行了模块化的重构,引入了platformClassloader。但jagsaw相对于OSGI,无论是功能上,还是成熟度上都是难以比...

0
0
发表于大前端专区
2017/11/21 22:02

OSGi简介

这两天在研究Kotlin时,看到Kotlin和和OSGi的完美融合,就有必要介绍下OSGi。 OSGi是什么 OSGi是Open Services Gateway initiative的缩写,叫做开放服务网关协议。我们说到OSGi时,根据上下文不同,通常可能指OSG...

0
0
发表了博客
2014/04/23 01:15

OSGi与语义

OSGi是一个语义框架。 本来是服务网关。 但是服务网关的出现勾起了人们改造它的欲望。想从中得到更多的东西。这说明人就是愚蠢的,不能从逻辑只能从欲望推出它的存在。另一方面,说明智能进化是存在的。 被推广应用是人们的语义渴望的结果。 这不是个伟大的发明。 但是软件很多的走向都在说明这个事情是对的。是正确的方...

0
4
发表了博客
2018/09/10 10:33

【OSGI】1.初识OSGI-到底什么是OSGI

<div class="htmledit_views"> 目前,业内关于OSGI技术的学习资源或者技术文档还是很少的。我在某宝网搜索了一下“OSGI”的书籍,结果倒是有,但是种类少的可怜,而且几乎没有人购买。<br> 因为工作的原因我需要学习OSGI,所以我不得不想尽办法来主动学习OSGI。我将用文字记录学习OSGI的整个过程,通过整理书籍和视频教程...

0
0
发表了博客
2013/02/28 11:18

OSGi规范概要

目前最新的OSGi规范是2012年7月发布的Release 5,Version5.0(后文简称为R5.0)版本,该规范定义了Java模块化系统所涉及的各种场景(开发、打包、部署、更新和交互等),以及其中用到的标准接口和参考模型。它是一份内容很全面、涉及范围很广泛的技术规范,从嵌入式系统到大型服务器系统,从模块的编码开发到部署使用,从...

2
9
发表了博客
2012/07/17 12:49

初涉OSGi

开始对OSGi作一些了解和学习。下个月可能会做的一个项目要用到OSGi。 目前作为学习资料的是《OSGi and Apache Felix 3.0 Beginner's Guide》。 基本简介: OSGi(Open Services Gateway initiative)的概念开始于1999年,OSGi Alliance组织的最初目的是将java技术嵌入到住宅网关,为各种家庭智能设备提供各种服务。目前该...

0
6
发表了博客
2013/09/10 13:42

OSGi依赖管理

OSGi容器是如何能将jar文件中的一些类隐藏掉,而让另外一些类可见呢?这是因为OSGi容器使用Java类加载器来管理类的可见性,OSGi容器为每个Bundle创建不同的类加载器,因此每个Bundle能访问位于下列位置中的类: a) 位于Java启动类路径下的、所有以Java.*开头的包中的类; b) 位于OSGi框架类路径下的类,通常有一个独立的...

0
7
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
发表了问答
2016/03/04 11:30

druid不支持OSGI

@wenshao 你好,想跟你请教个问题: druid怎么不支持一下OSGI? 我是在OSGI运行环境下使用druid的,虽然有工具可以对jar包进行转换,初步验证也能连接db查询数据,但由于druid 依赖的jconsole和tools也不支持osgi,而这两个依赖包我没install到OSGI运行环境中,报了"load filter error, filter not found : stat" 这个异...

7
0
发表了问答
2010/03/21 23:15

采用OSGi框架开发项目的十个问题

OSGi是Java领域里无可辩驳的最成熟的模块系统,它与Java几乎是如影相随,最早出现于JSR 8,但是最新规范是JSR 291。 OSGi在JAR的MANIFEST.MF文件中定义了额外的元数据,用来指明每个包所要求的依赖。这就让模块能够(在运行时)检查其依赖是否满足要求, 另外,可以让每个模块有自己的私有 classpath(因为每个模块都有一...

14
12
发表了问答
2014/02/22 14:53

osgi有多少人在用?

说说现状吧,感觉用的不多哦

3
0
发表了问答
2016/05/21 13:54

【新人提问】如何将eclipse中的package导出为一个bundle

之前一直是用别人写好的bundle,现在想要修改它其中的一些代码,但是修改完以后不知道怎样将package导出为一个新的bundle? 目前只会将package导出为一个jar,然后写它的MANIFEST.MF文件,但是依然不可用。提示缺少OSGI-INF/....XML文件。 诚心求教,谢谢!

2
0
发表了问答
2016/05/02 20:21

怎么在OSGI工程里发布restful接口

项目是旧代码了,是用的OSGI框架,最近要搞一个restful接口,查了很多资料还是没有结果,有没有做过这方面的,指导一下,万分感谢!

1
0
发表了问答
2013/07/19 09:33

听说 Spring 想要放弃 OSGi,元芳,你怎么看?

看了这篇12年底的老报道,说 Spring 要因为 Gradle 放弃 OSGi,不知有知情者说说内情吗?http://www.csdn.net/article/2012-10-25/2811157-Spring-Abandons-OSGi-in-Move-to-Gradle

8
0
发表了问答
2014/03/27 22:03

在Servlet容器中嵌入OSGI框架

我想问一下,如何在Servlet容器中嵌入OSGI框架?

2
0
发表了问答
2015/02/05 14:04

bundle内的类可以在bin目录里看到,说明编译成功了,但是启动osgi时,提示ClassNotFoundException

@谢小明 你好,想跟你请教个问题: bundle内的类可以在bin目录里看到,说明编译成功了,但是启动osgi时,提示ClassNotFoundException 谢谢!

1
0
发表了问答
2015/10/14 21:38

blueprint里面自定义namespace后,如何获取调用者的bundle

bundle 1里面有如下代码 public class PpNamespaceHandler implements NamespaceHandler {   public ComponentMetadata decorate(Node node, ComponentMetadata cm, ParserContext context)   {     return null;   }   public Set<Class> getManagedClasses()   {     return new HashSet<Class>(Arrays.asList(PpNamespaceHand...

1
0
发表了问答
2015/09/18 11:35

blueprint里面如何获取整个容器里面的所有camelContext

如何拿到整个blueprint容器(karaf)的所有(所有bundle的)camelContext BlueprintContainer.getComponentIds()这个拿不到其他bundle的camelContext, 只能拿到自己bundle的所有camelContext PS : 比如说:我向karaf的deploy目录仍了一个blueprint-restlet-config.xml 内容如下 <?xml version="1.0" encoding="UTF-8"?>...

5
0
发表了问答
2015/07/12 21:48

有没有知道怎么部署osgi的呀

在eclipse上可以运行,怎么打包出来到linux上运行呀,有没有相关的文章推荐看一下呀!

4
0
发表了问答
2012/06/27 20:31

利用 R-OSGi 实现分布式 OSGi 应用

OSGi(Open Service Gateway Initiative)是业界中最知名的 Java 模块化技术规范,其核心设计思想是面向服务的组件模型(Service-Oriented Component Model)。OSGi 发展至今已经得到了众多企业,厂商,开源组织的支持,尤其当主流的 Java 应用服务器都采用 OSGi 时,OSGi 俨然已经成为 Java 模块化的标准。 OSGi v4.2 ...

2
14
发表了问答
2012/01/29 10:37

osgi Bundle-NativeCode使用问题

那位大侠用过osgi的Bundle-NativeCode 问题1 在MANIFEST.MF里是不是Bundle-NativeCode要写Bundle内部的相对路径 问题2 在JAVA代码中System.load改写相对路径吗?怎么写 比如我的项目路径如下: Bundle(项目名) src com.test Test.java conf lib.so...

9
0
发表了问答
2015/02/11 10:35

apache felix web工程如何通过ip和端口进入默认页面?

1
0
发表了问答
2015/04/15 00:09

osgi与maven使用

我想用eclipse新建一个项目,采用osgi热插拔,但是想使用maven来管理jar,请问这个该怎么实现?有没有实例?希望大神能给我一个demo,我现在主要是不知道osgi中怎么引用maven中的包, 希望大神解答,谢谢。

4
0
发表了问答
2013/05/03 21:24

OSGi是什么,可以用通俗的话描述下吗?

OSGi(Open Service Gateway Initiative)技术是面向Java的动态模型系统。OSGi服务平台向Java提供服务,这些服务使Java成为软件集成和软件开发的首选环境。Java提供在多个平台支持产品的可移植性。OSGi技术提供允许应用程序使用精炼、可重用和可协作的组件构建的标准化原语。这些组件能够组装进一个应用和部署中。 上面这段...

74
5
发表了问答
2015/10/17 14:45

osgi中使用akka的问题 No configuration setting found for key 'akka'.

在应用的bundle中jar的下面放了application.conf文件。 在bundleActivator中使用ActorSystem system = ActorSystem.create("my"); 在启动的时候报:osgi中使用akka,出现com.typesafe.config.ConfigException$Missing: No configuration setting found for key 'akka'....

1
0
发表了问答
2015/08/24 11:12

OSGI Blueprint里面配置class,set方法必须是void的吗?

在Blueprint.xml配置文件里面 <bean id="nginx" class="com.lala.osgi.server.ApacheServer"> <property name="id" value="10010"/> <property name="name" value="1.19.2"/> <property name="port" value="80"/> <property name="address" value="127.0.0.1"/> </bean> 要配置这个cla...

4
0
发表了问答
2015/08/21 10:42

maven-bundle-plugin插件打包的问题?

maven-bundle-plugin插件是felix出的 我在插件里面是这样配置的 <Import-Package>org.osgi.framework</Import-Package> 但是,生成出来的东西是这样的: Import-Package: org.osgi.framework;version="[1.8,2)" 如果控制插件,不要乱加东西,我没有配置version,为啥就偷偷加上了。 请问,这个问题如何解决...

6
0
发表了问答
2009/03/02 22:13

企业中的OSGi

http://www.infoq.com/cn/news/2008/11/osgi-in-the-enterprise

1
0
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
5 评论
104 收藏
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部