在eclipse 3.1以后,bundle(osgi的概念)与原有的plugin成为可互换的名字.在eclipse的API里,存在Plugin类和Bundle类.其中,Plugin类里的方法已经逐步被废弃使用.
<o:p> </o:p>
建立一个可以管理bundle的类有两种方式:
a.继承 Plugin类
b.实现 BundleActivator 接口.
其中,如果我们在创建一个plug-in project时,选择了创建Activator,则该类就是继承Plugin类.
<o:p> </o:p>
如何调用管理bundle的类?
在Menifest.MF文件中指定:
Bundle-Activator: com.helloworld.MyBundle<o:p></o:p>
(自动创建时为: Bundle-Activator: com.helloworld.Activator)
这样设置完成后,再次触发该bundle的时候,就可以看到在Bundle 的start()方法中System.out.println()出来的信息,说明我们的bundle已经启动。
知道了这些,我们就可以控制一个Bundle的启动与停止了,下面的代码是停止的例子:
Button bn=new Button(parent,0);
bn.setText("stop the bundle");
bn.addSelectionListener(new SelectionListener(){
public void widgetDefaultSelected(SelectionEvent e) {
}
public void widgetSelected(SelectionEvent e) {
//关闭当前view
IWorkbenchPage page=PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage();
IViewPart v=page.findView("com.singba.learing.helloworld.views.HelloworldView");
page.hideView(v);
// 停止bundle
Bundle mybundle=Platform.getBundle("com.singba.learing.helloworld");
try {
mybundle.stop();
} catch (BundleException e1) {
e1.printStackTrace();
}
}
});
分享到:
相关推荐
Eclipse插件开发学习笔记将带领我们深入了解Eclipse插件开发的方方面面。 首先,我们需要了解Eclipse插件的基础概念。在Eclipse中,插件主要由一系列的扩展点(Extension Points)组成,这些扩展点定义了插件可以...
**Eclipse 开发学习笔记** Eclipse是一款强大的集成开发环境(IDE),主要用于Java应用程序的开发,但通过插件也可以支持其他编程语言,如C++, Python等。这份《Eclipse开发学习笔记》是针对想要深入理解和掌握...
标签提到的“源码”可能指的是查看和学习SpringDM以及相关OSGi库的源代码,这对于理解其工作原理和实现细节非常有帮助。同时,“工具”可能是指像Eclipse PDE或SpringSource Tool Suite这样的集成开发环境,它们提供...
【Eclipse插件开发学习笔记】是一本详细探讨Eclipse插件开发的教程,由张鹏等人编写。这本书深入浅出地介绍了如何利用Eclipse平台进行插件开发,旨在帮助开发者提升在Eclipse环境中定制和扩展功能的能力。通过阅读...
《Eclipse插件学习笔记》是一本专注于Eclipse插件开发的书籍,旨在帮助开发者深入理解和掌握Eclipse平台上的插件开发技术。Eclipse作为一款强大的开源集成开发环境(IDE),其可扩展性主要体现在丰富的插件系统上,...
Android 初学者学习笔记 ... Android 初学者学习笔记提供了 Android 开发环境设置、Android SDK Manager 使用、创建模拟器和 Eclipse ADT 插件的详细指导,旨在帮助初学者快速熟悉 Android 开发环境和基本概念。
- 博文:像《osgi学习笔记(一)》这样的博客文章,通常会分享实践经验和示例。 - 书籍:《OSGi in Action》是一本深入介绍OSGi的经典书籍。 总的来说,理解OSGi的概念和机制,掌握bundle的创建和管理,以及如何...
在实际应用中,如RCP(Rich Client Platform)产品开发,OSGI框架允许在Eclipse环境中通过配置动态加载bundle,但在生成产品后,可能需要手动修改ini文件来启动未自动加载的bundle,因为bundle的启动顺序和依赖关系...
在本篇“osgi学习笔记(二)”中,我们将深入探讨OSGi(Open Services Gateway Initiative)框架的核心概念、工作原理以及如何在实际项目中应用它。OSGi是一种Java模块化系统,它允许开发人员创建可独立更新和依赖...
开发环境 安装JDK和JRE ...打开eclipse如下图所示: 新建工程 新建一个工程,取名为FirstApp,使用默认设置 。 File->New->Android Application Project 一路 next 直到 finish 。 Build Project Pr
Android初学者学习笔记主要涵盖了如何使用Android和Eclipse ADT插件来创建并运行一个基本的Android应用程序。首先,对于新手开发者,推荐使用ADT Bundle,它包含了一个预装了ADT插件的Eclipse版本以及Android SDK,...
本篇学习笔记主要关注的是ActionForm,它是Struts框架中用于处理用户请求的核心组件之一。 ActionForm是Struts中用于接收和验证用户输入的数据的类。当用户通过表单提交数据时,这些数据会被封装到一个ActionForm...
OSGi(Open Service Gateway Initiative)是一个基于Java语言的服务规范,旨在提供一个开放的服务平台,它...学习OSGi原理与最佳实践,不仅可以提升个人的编程和系统设计能力,也是把握现代Java开发趋势的重要一环。
"Eclipse插件开发指南.pdf"和"eclipse插件开发学习笔记代码以及说明.rar"提供了学习Eclipse插件开发的具体案例和代码,这些资料可以帮助初学者快速上手实践。 总之,Eclipse插件开发是一门深奥的技术,涵盖了Java...
### Android学习笔记精要 #### 一、Android基础环境搭建 Android开发的初步阶段,需安装JRE(Java Runtime Environment)、JDK(Java Development Kit)、SDK(Software Development Kit)及ADT(Android ...
- **ADT Bundle**:包含了Eclipse集成开发环境(IDE)、Android SDK等必要工具。 - **路径配置**:确保将ADT Bundle中的sdk\tools和sdk\platform-tools目录添加到系统的PATH环境变量中。 - **常用命令**: - `...
ADT可以从Eclipse的市场中直接安装,也可以通过下载ADT Bundle进行集成安装。ADT的版本需与Eclipse版本相匹配,以避免兼容性问题。 #### 五、理解Android SDK目录结构 Android SDK目录包含了多个子目录,每个子...