`
fengzl
  • 浏览: 216722 次
  • 性别: Icon_minigender_1
  • 来自: 宁波
社区版块
存档分类
最新评论

OSGI注意细节

阅读更多
关于第三方包地加入

eclipse: New-> Other -> Plug-in from existing JAR archives

导入到当前工程中

或者放在MANIFEST.MF的 Bundle-ClassPath: .,下,不过这样会造成jar打包时候有问题

最好的办法:建立一个bundle,让他的Bundle-ClassPath 加入全部的jar为其他的bundle提供服务

spring osgi bundle update操作并不管什么用,需要refresh操作

创建bundle最好的办法是:



下载,http://maven.apache.org/

环境变量 ,添加 MAVEN_HOME : D:\java\apache-maven-2.0.9\,

在path中加入D:\java\apache-maven-2.0.9\bin

如果安装老是失败,建议用 mvn clean install,

如果出现下面的错误,可以忽略
[ERROR] BUILD ERROR
[INFO] ————————————————————————
[INFO] Cannot execute mojo: clean. It requires a project with an existing pom.xm
l, but the build is not using one.

新建一个空的目录,如D:\test\osgi,打开cmd并到刚才建的目录下执行:

mvn archetype:create   -DarchetypeGroupId=org.springframework.osgi -DarchetypeArtifactId=spring-osgi-bundle-archetype  -DarchetypeVersion=1.1.0   -DgroupId=org.foo  -DartifactId=org.foo.my-springdm-bundle -Dversion=0.1

注意是这一行命令, 项目框架用的是spring-osgi-bundle-archetype,如果看到一个新建目录org.foo.my-springdm-bundle,表示已经建好了一个空项目 :-)。

进入项目的根目录,用下面的命令生成MANIFEST.MF file 和 META-INF目录。

cd D:\test\osgi\org.foo.my-springdm-bundle

mvn package
mvn org.apache.felix:maven-bundle-plugin:manifest

最后的生成结果

    * Packaged as an OSGi bundle
    * META-INF/MANIFEST.MF automatically generated
    * src/main/java/<package> public package automatically exported
    * src/main/java/<package>/internal private package
    * src/main/resources/META-INF/spring/bundle-context.xml is a spring configuration file that defines the simple bean.
    * src/main/resources/META-INF/spring/bundle-context-osgi.xml is a spring configuration file ready for you to add bean definitions from the osgi namespace (services, references etc.).
    * .project, .classpath, and build.properties files created to enable use of this project directly inside eclipse as a PDE plugin project



分享到:
评论

相关推荐

    osgi实战(pdf超请版)

    ### OSGI实战知识点概述 #### 一、序言与背景介绍 ...综上所述,《OSGI实战》不仅涵盖了OSGI的基本概念和技术细节,还提供了丰富的实战案例和深入的技术解析,为读者全面了解和掌握OSGI提供了宝贵的学习资料。

    解决osgi spring 事务配置问题

    4. **注意类加载器的兼容性**:确保你的事务管理类和相关的AOP库能在所有相关bundle中被正确识别和加载。 5. **配置MetaType信息**:在DS中,你需要为事务管理器配置MetaType信息,以便在UI配置工具中能够正确显示和...

    SCA、SOA与OSGi概念浅析

    尽管两者都涉及服务和组件的概念,但OSGI更注重运行时环境的灵活性,而SCA则聚焦于服务组装和部署。 **发展历程**:SCA的早期版本为0.9和0.95,之后在2007年发布了1.0版本。这个规范由BEA、IBM、Oracle等公司共同...

    学习SpringDM+OSGI的总结

    ### SpringDM与OSGI概述 #### OSGI概念解析 ...在实际开发过程中,需要注意处理好版本兼容性问题以及依赖管理,以确保项目的顺利进行。此外,合理规划服务的启动顺序也是保证应用稳定运行的关键因素之一。

    OSGi实战进阶篇

    - **6.9 注意事项**:列出在进行OSGi开发过程中需要注意的关键点,避免常见的陷阱。 #### 七、深入OSGi - **7.1 关于OSGi**:提供对OSGi基本概念和历史背景的概述。 - **7.2 OSGi R4规范** - **7.2.1 Core ...

    OSGI 學習心得 Java 開發

    - **版本兼容性注意:** 《OSGi 实战》与《OSGi 进阶》两本书的部分内容可能已经过时,需要注意与当前使用的Eclipse版本的兼容性问题。例如,在Eclipse 3.4 SR1中,可能需要特别配置某些设置才能顺利执行示例代码。 ...

    OSGI原理及实战

    - **书籍和教程**: 有关OSGI开发的最佳实践和技术细节。 #### 八、OSGI框架的未来展望 - **发展趋势**: 更高的可伸缩性和性能优化。 - **新兴技术集成**: 与云计算、微服务架构等结合。 - **标准化进展**: 不断完善...

    OSGI实战教程

    - **6.9 注意事项**:总结在OSGI开发过程中常见的陷阱和需要注意的细节。 #### 七、深入OSGI - **7.1 关于OSGI**:提供了更深层次的理解,包括其历史背景和发展趋势。 - **7.2 OSGI R4规范** - **7.2.1 Core ...

    OSGI实战

    ### OSGI实战知识点概述 #### 一、序言与背景介绍 - **背景**: 作者自工作以来一直关注插件体系结构,从早期接触ant、...它不仅适合初学者入门,也适合有一定经验的开发者深入了解和掌握OSGI的核心概念和技术细节。

    osgi doc

    这部分提供了基于OSGi的留言板的具体实现细节,包括环境配置、各个功能模块的开发等。 - **环境准备**:介绍所需的开发环境设置,包括OSGi框架的选择、开发工具等。 - **简单MVC框架模块**:使用MVC模式构建应用...

    osgi实战读书笔记

    具体实现细节需参考OSGi规范文档。 #### 三、常见Bundle安装失败原因 - **Bundle-RequiredExecutionEnvironment**中指定的执行环境与实际环境不匹配。 - 缺少**Bundle-SymbolicName**字段,导致无法确定Bundle的...

    JAVA基于OSGI服务平台框架标准的离线系统的设计与实现

    通过定义服务接口和实现,bundle之间可以进行通信和交互,而无需直接依赖对方的实现细节,这极大地增强了系统的可插拔性和可扩展性。 在离线系统的设计中,OSGi的优势在于它的动态性。由于系统可能需要在没有网络...

    pax-construct

    使用Pax Construct的开发者可以专注于编写业务代码,而不必过于关心底层的OSGi配置细节。这不仅提高了开发效率,也有利于团队协作,因为项目的构建过程变得更加标准化和透明。 在使用Pax Construct时,需要注意的是...

    spring-dm-reference

    - **使用外部库时的注意事项**:在使用非 OSGi 兼容的外部库时,需要注意的问题和解决方案。 - **问题诊断**:提供了一些调试技巧和策略,帮助开发者解决遇到的问题。 ##### 3.3 服务注册 - **将 Spring Bean 注册...

    Eclipse及plugins

    "Ant的使用.txt"可能提供了更多关于如何在Eclipse中利用Ant进行项目构建的细节,包括如何配置Ant构建路径、运行Ant任务以及调试构建过程。熟悉这些操作将大大提高开发效率,确保项目的自动化构建流程顺利进行。 ...

    docker-karaf-grpc-example

    请注意,此示例基于上的HealthCheck示例。 概述 基本上,它的工作方式如下: 安装并运行 (在这种情况下,在容器中)。 在Karaf中,安装 。 它将基于分发已安装的OSGi服务。 使用生成OSGi服务。 在此示例中,...

    activiti插件

    - **文档查阅**:虽然这里没有提供具体的安装细节,但通常开发者会提供详细的文档或教程,说明如何安装和使用这些插件。 - **社区支持**:如果遇到问题,可以寻求Activiti社区的帮助,那里有很多经验丰富的开发者...

    Hibernate ORM 4.2.0 正式版

    这涉及到OSGi环境下的集成问题,需要对OSGi及其在Java中的应用有所了解。 8. [HHH-8061]:主干矩阵CI测试失败的问题,这表明在持续集成环境中可能存在构建或测试问题,对持续集成感兴趣的开发者应当关注。 9. [HHH...

    GPT技术文档1

    学习和了解GPT,可以参考“http://blog.csdn.net/dffd001”和“https://www.jianshu.com/u/2306ba8f1c59”的博客,这些博主分享了关于GPT的实践经验和技术细节。 总之,GPT作为百度推出的一款强大工具,为Android...

    Apress.pro.springsource.dm.server.pdf

    随着云计算和容器技术的发展,SpringSource dm Server也在不断进化,未来可能会更加注重云原生支持和自动化运维能力,以便更好地适应现代企业的IT需求。 通过以上介绍,我们可以看到SpringSource dm Server凭借其...

Global site tag (gtag.js) - Google Analytics