希望 NetBeans 为您提供更多功能吗?
  您希望倾心投入到 NetBeans 的开发中,并希望它能激发您开发另一个应用程序的热情。您希望聆听音乐、浏览网页、查看邮件、存储喜欢的 URL,以及维护日常任务 —— 所有这些都可在 NetBeans 内部完成。那么,我们来看看如何添加所有这些需要的功能?

  NetBeans IDE 是一个基于插件的开发环境。换句话说, NetBeans 有一个 模块化的架构。简单地说,我们拥有一个最基本的集成开发环境,然后通过编写插件来扩展 IDE,从而丰富它的功能。NetBeans 平台 就是这种基本 IDE。您看到的大多数 NetBeans 中的功能是由这些插件实现的。

  NetBeans 插件模块和相关后台

  顾名思义,插件模块就是插入到 NetBeans IDE 中用于提供某些特定功能的模块。插件可以拥有图形用户界面,也可能没有图形用户界面。我们已着手将插件的概念更好地付诸实践,我确信您已经安装了不只一个 Mozilla Firefox 插件使您享受更好的浏览体验。

  基本术语请参阅 http://platform.netbeans.org/tutorials/nbm-glossary.html。

  NetBeans Platform:主干应用程序,它提供大多数应用程序所需的全部内容,而大多数应用程序不需要的内容则不提供。NetBeans Platform 提供了一个应用程序的常用需求,例菜单、 文件管理和设置 —— 全部是即开即用的。“在 NetBeans 上”构建一个应用程序意味着,不是从头开始编写应用程序,而是只提供 NetBeans Platform 尚不具有的应用程序部分。开发周期结束时,您将您的应用程序与 NetBeans Platform 一起打包,从而节省了大量时间和精力,并获得强健可靠的应用程序。

  System Filesystem:常规注册表,它包含从已注册模块的 layer.xml 配置文件中构建的 NetBeans 配置信息。NetBeans 将各种配置信息存储在 System Filesystem 中。例如,System Filesystem 包含一个 Menu 文件夹,该文件夹包含了一个具有名称(例如 File 和 Edit)的子文件夹。这些子文件夹包含代表 Java 类的文件,这些类执行在 IDE 的“File”和“Edit”菜单中出现的操作。

  Module:一组 Java 类,提供具有特定功能的的应用程序。Java 类使用 manifest.mf 文件声明模块和 layer.xml 配置文件,用以在 System Filesystem 中注册它们的功能。在 NetBeans 术语中“plugin” 是一个形容词 而“module”是一个名词。二者之间没有没有明显的语义差异。

  NetBeans API:插件模块编写人员都可以使用的公共接口和类。根据它们提供功能的不同类型,将它们分为特定的应用程序接口(API)。正如 API 参考文档中指定的,Java 源包及其子包的内容和行为就是 API。要获得全部 NetBeans 应用程序接口列表(NetBeans API List),请单击 此处。

  Module Suite:一组部署在一起相互依赖的模块。IDE 帮助您标记该套件 —— 例如您可以添加一个启动画面,您还可以指定不想让应用程序提供的一部分 NetBeans 平台。

  编写第一个插件

  您现在会看到怎样写入第一个插件。插件将做些什么?除了在编辑器中创建一个“Start Page”选项卡之外还能创建另一个“选项卡”。

  不,还不够漂亮,但足以达到演示的目的了 :-)

  创建新模块项目

  创建一个新的模块项目,将它命名为“nbmodule-demo”。

  选中“Standalone Module”选项。

  基本的模块配置

  代码基(Code Name Base):将 'myorghere' 替换为 'mymodule' 从而获得“org.mymodule.nbmoduledemo”。

  模块显示名称(Module Display Name):nb-module-demo

  本地化捆绑(Localizing Bundle):保持默认。该插件指定了用于国际化特定于语言的字符串。

  XML 层(XML Layer):保持默认。它在 NetBeans System Filesystem 中注册像菜单和工具栏按钮这样的项目。

  单击“Finish”按钮。

  系统生成了项目代码结构:

  主干模块现在准备就绪。接下来,我们将为希望模块执行的特定任务添加代码。

  添加一个“Window Component”

  右键单击'org.mymodule.nbmoduledemo'选项。

  选择“New-> Window Component”。

  新窗口(New Window)

  窗口位置(Window Position):“editor”,目的是向编辑器中添加一个“选项卡”。

  选中“Open on Application Start”选项。

  在“Class Name Prefix”字段中输入“AppUIMain”。

  如果您愿意您可以选择一个图标。

  单击“Finish”按钮。

  三个新文件已添加到“org.mymodule.nbmoduledemo”项目源包中。

  “AppUIMainTopComponent.java”是一个决定插件 GUI 的文件。切换到设计视图。

  分别添加一个“Label”、“Combo box”和“Button”:

  现在插件准备就绪。

  在 NetBeans 中加载插件模块

  右键单击模块项目并选择“Install/Reload in Target Platform”。

  一个新的 NetBeans 实例启动,您可以看到新的“选项卡”。

  注释

  本文演示了如何通过插件模块轻松地扩展 NetBeans。完整项目请点击 此处 下载。要了解更多关于教程、文档方面的信息,请访问参数资料部分的链接。

作者:Amit Kumar Saha   

NetBeans 插件开发简介的更多相关文章

  1. netbeans 优化设置

    下面我就以Windows上的NetBeans安装为例,说说如何配置字体. 1.NetBeans界面上的普通字体大小,可以通过配置NetBeans安装目录下netbeans.conf启动文件来实现,这个 ...

  2. PS插件开发plugin

    Photoshop插件开发 VC++制作Photoshop自动化插件:http://blog.sina.com.cn/s/blog_73c52fda0101c7hw.html Photoshop 的扩 ...

  3. 老李分享:持续集成学好jenkins

    老李分享:持续集成学好jenkins   poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自动化测试,性能测试,测试工具开发等工作为目标.poptest测试开发工程师就业培训请大 ...

  4. Jenkins知识地图

    转自:http://blog.csdn.net/feiniao1221/article/details/10259449 这篇文章大概写于三个月前,当时写了个大纲列表,但是在CSDN上传资源实在不方便 ...

  5. Redmine it!

    redmine插件开发简介 最稳妥的学习应该是先看官方文档,官方还给了一个具体的插件开发教程,不过如果一步不差按照教程敲代码,其实会发现还是有些问题的,需要稍稍改动. 这里,我自己编写了一个简单的插件 ...

  6. gulp初体验记录(简介、插件开发介绍)

    目前用的业界比较知名的三个前端构建工具:grunt.gulp.fis,自己此前一直都是只在用grunt,fis看过一点,gulp则一直都没注意过,直到最近发现好像用的人越来越多,所以今天也就抽了点时间 ...

  7. rhythmbox插件开发笔记1:简介&入门

    rhythmbox是gnome下一款开源的音乐播放软件.ubuntu和fedora的桌面环境中均默认安装了rhythmbox. rhythmbox架构非常灵活,几乎所有地方都可以用插件来修改.用户想实 ...

  8. NetBeans简介和简单使用

    1.什么是NetBeans? NetBeans IDE:可以使开发人员利用Java平台能够快速创建Web.企业.桌面以及移动的应用程序: 支持语言:PHP.Ruby.JavaScript.Groovy ...

  9. [转]Eclipse插件开发之基础篇(6) SWT简介

    原文地址:http://www.cnblogs.com/liuzhuo/archive/2010/09/01/eclipse_plugin_1_3_1.html SWT(Standard Widget ...

随机推荐

  1. 从专用磁盘创建 Windows VM

    通过使用 Powershell 将专用托管磁盘附加为 OS 磁盘来创建新 VM. 专用磁盘是保留原始 VM 中的用户帐户.应用程序和其他状态数据的现有 VM 中虚拟硬盘 (VHD) 的副本. 使用专用 ...

  2. sqlserver 跨服务器备份表

    exec sp_configure 'show advanced options',1 reconfigure exec sp_configure 'Ad Hoc Distributed Querie ...

  3. ShellCode初体验

    写在前面的话: ShellCode是一门艺术,就像围棋手门追求的“神之一手”,今天就来初探一下这让人疯狂的艺术: 零.代码0 相信手写opcode,目前很少有人干了,其实,也确实已经没有这个必要了,毕 ...

  4. arrayfun用法(转)

    http://blog.sina.com.cn/s/blog_7cf4f4460101bnhh.html 利用arrayfun函数可以避免无谓的循环,从而大大提高代码的简介性.1.A=ARRAYFUN ...

  5. October 17th 2017 Week 42nd Tuesday

    We execuse our sloth under the pretext of difficulty. 我们常以困难为由,作为懒惰的借口. The process of my system-tra ...

  6. linux命令2—常见linux命令

    1.进入vi的命令 vi filename :打开或新建文件,并将光标置于第一行首 vi +n filename :打开文件,并将光标置于第n行首 vi + filename :打开文件,并将光标置于 ...

  7. Gold Point Game~~

    黄金点游戏 1. 队友博客链接 GitHub链接 2.过程总结 (1)俩人各自所做工作?对方编程习惯总结(是否遵照代码规范.是否关注算法效率.是否做了代码复审.界面设计是否关注美观实用等等): 这次作 ...

  8. canvas实例_在线画图工具

    fadsfklasdjfklasjdklfjasdlk;fjasd;lfjaskl;dfjal

  9. O​r​a​c​l​e​ ​1​1​g​ ​客​户​端​安​装​及​p​l​s​q​l​配​置

    百度文库 http://wenku.baidu.com/link?url=7KyIHuoeUf1EvD5uClFNugDIT9s_dU7bu5_2XhQK4SLarHfG_dBwzhMooedQcsn ...

  10. Tensorflow Object Detection API 安装

    git:https://github.com/tensorflow/models/tree/master/object_detection 中文文档:http://wiki.jikexueyuan.c ...