zoukankan      html  css  js  c++  java
  • OSGi 系列(十八)之 基于注解的 Blueprint

    OSGi 系列(十八)之 基于注解的 Blueprint

    1. 注解实现 blueprint

    第一步:bundle 添加 Bundle-Blueprint-Annotation

    <plugin>
        <groupId>org.apache.felix</groupId>
        <artifactId>maven-bundle-plugin</artifactId>
        <version>3.0.0</version>
        <extensions>true</extensions>
        <configuration>
            <instructions>
                <Bundle-Blueprint-Annotation>true</Bundle-Blueprint-Annotation>
            </instructions>
        </configuration>
    </plugin>
    

    第二步:karaf 要安装以下 4 个 bundle:

    install -s mvn:org.apache.xbean/xbean-bundleutils/3.18
    install -s mvn:org.apache.xbean/xbean-finder/3.18
    install -s mvn:org.apache.aries.blueprint/org.apache.aries.blueprint.annotation.api/1.0.1
    install -s mvn:org.apache.aries.blueprint/org.apache.aries.blueprint.annotation.impl/1.0.1
    

    注意 karaf 4.1.5 上要重启 aries-blueprint:

    feature:stop aries-blueprint
    feature:start aries-blueprint
    

    或直接在 standard-4.1.5-features.xml 文件中 aries-blueprint 中添加:

    <feature name="aries-blueprint" description="Aries Blueprint" version="4.1.5">
        <feature>aries-proxy</feature>
        <bundle dependency="true" start-level="20">mvn:org.apache.aries/org.apache.aries.util/1.1.3</bundle>
        <!-- Making the compatibility bundle a dependency allows it to only be installed on-demand -->
        <bundle dependency="true" start-level="20">mvn:org.apache.aries.blueprint/org.apache.aries.blueprint.core.compatibility/1.0.0</bundle>
    
        <!-- 添加 Bundle-Blueprint-Annotation 支持 -->
        <bundle start-level="20">mvn:org.apache.xbean/xbean-bundleutils/3.18</bundle>
        <bundle start-level="20">mvn:org.apache.xbean/xbean-finder/3.18</bundle>
        <bundle start-level="20">mvn:org.apache.aries.blueprint/org.apache.aries.blueprint.annotation.api/1.0.1</bundle>
        <bundle start-level="20">mvn:org.apache.aries.blueprint/org.apache.aries.blueprint.annotation.impl/1.0.1</bundle>
    
        <bundle start-level="20">mvn:org.apache.aries.blueprint/org.apache.aries.blueprint.api/1.0.1</bundle>
        <bundle start-level="20">mvn:org.apache.aries.blueprint/org.apache.aries.blueprint.cm/1.1.0</bundle>
        <bundle start-level="20">mvn:org.apache.aries.blueprint/org.apache.aries.blueprint.core/1.8.3</bundle>
        <conditional>
            <condition>bundle</condition>
            <bundle start-level="30">mvn:org.apache.karaf.bundle/org.apache.karaf.bundle.blueprintstate/4.1.5</bundle>
        </conditional>
        <capability>
            osgi.service;effective:=active;objectClass=org.apache.aries.blueprint.services.ParserService,
            osgi.extender; osgi.extender="osgi.blueprint";uses:="org.osgi.service.blueprint.container,org.osgi.service.blueprint.reflect";version:Version="1.0"
        </capability>
    </feature>
    

    2. blueprint 注解使用

    Blueprint Annotations官网

    http://blog.csdn.net/Rongbo_J/article/details/53728846

  • 相关阅读:
    Echarts动态加载柱状图和折线图混合展示的实例
    Webdynpro ABAP 简单剖析
    SAP NetWeaver Business Client (NWBC) 简介
    nginx and node.js配合使用 helloworld
    Nodejs连接mysql的增、删、改、查操作
    SAPUI5使用了哪些开源技术
    Javascript 严格模式详解
    SAPUI5实例一:来创建Web应用UI
    OPEN(SAP) UI5 学习入门系列之四:更好的入门系列-官方Walkthrough
    OPEN(SAP) UI5 学习入门系列之三:MVC (下)
  • 原文地址:https://www.cnblogs.com/binarylei/p/8626266.html
Copyright © 2011-2022 走看看