用ECLIPSE带OSGI包安装自己开发 BOUNDLE 全过程

1. 写好继承 BundleActivator 的JAVA 文件,其中 start() 函数是 OSGI 平台调用开始入口。

package com.javaworld.sample.helloworld;

import org.osgi.framework.BundleActivator;
import org.osgi.framework.BundleContext;

public class Activator implements BundleActivator {

 /*
  * (non-Javadoc)
  * @see org.osgi.framework.BundleActivator#start(org.osgi.framework.BundleContext)
  */
 public void start(BundleContext context) throws Exception {
  System.out.println("Hello World!!");
 }
 
 /*
  * (non-Javadoc)
  * @see org.osgi.framework.BundleActivator#stop(org.osgi.framework.BundleContext)
  */
 public void stop(BundleContext context) throws Exception {
  System.out.println("Goodbye World!!");
 }

}
2. 新建一目录,将 org.eclipse.osgi_3.5.1.R35x_v20090827.jar (ECLIPSE的OSGI包),JAVA文件考到该目录下。进入该目录,编译改类。
   javac -classpath org.eclipse.osgi_3.5.1.R35x_v20090827.jar com/javaworld/sample/helloworld/Activator.java
3. 在 META-INF 目录下新建 MANIFEST.MF 文件,指定 Bundle-Activator等设置。

Manifest-Version: 1.0
Bundle-Vendor: JAVAWORLD
Bundle-Version: 1.0.0.qualifier
Bundle-Name: HelloWorld
Created-By: 1.6.0_14 (Sun Microsystems Inc.)
Bundle-Activator: com.javaworld.sample.helloworld.Activator
Bundle-ManifestVersion: 2
Import-Package: org.osgi.framework;version="1.3.0"
Bundle-SymbolicName: com.javaworld.sample.HelloWorld
4. 打包
   jar -cfm com.javaworld.sample.helloworld.Activator.jar HELLOWORLD.MF com/javaworld/sample/helloworld/Activator.class
5. 在DOS提示符下进入该目录,启动 OSGI
   java -jar org.eclipse.osgi_3.5.1.R35x_v20090827.jar -console
6. 安装新建 BUNDLE
   osgi> install file:com.javaworld.sample.helloworld.Activator.jar
7. 根据 ID 启动 BUNDLE,如果ID 是 1
   osgi> start 1
8. 停止 BUNDLE
   osgi> stop 1
9. 卸载 BUNDLE
   osgi> uninstall file:com.javaworld.sample.helloworld.Activator.jar

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

zhdi0

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值