netbeans插件_如何编写NetBeans插件
netbeans插件
是否想在NetBeans IDE中添加功能或自动执行某些操作? 跟随我们编写您的第一个NetBeans插件。
让我们超越简单的工具栏示例 ,创建一个可以自动更新的插件。 该代码基于NetBeans的WakaTime插件 。 我们的示例插件将仅打印Hello World语句,并在可用的情况下更新至新版本……足以使您入门。
创建一个新的插件项目
选择File
-> New Project
然后选择NetBeans Modules
-> Module
作为项目类型。
为您的项目命名
选择插件的名称空间或代码名称
添加一个Java文件
插件起点
创建新的Java类文件后,使其扩展ModuleInstall并使用@OnShowing对其进行包装,以便仅在GUI加载后才能运行。
@OnShowing
public class MyPlugin extends ModuleInstall implements Runnable {
}
在您的OnShowing
按ALT + ENTER ,然后Search Module Dependency for OnShowing
选择Search Module Dependency for OnShowing
将Window System API导入到项目中。 这将为您的项目添加新的依赖关系,并将必要的import语句添加到文件顶部。 还要对ModuleInstall
执行此ModuleInstall
。
有时NetBeans org.openide.util
依赖项,因此您可能必须手动添加该依赖项。 为此,右键单击MyPlugin,然后选择Properties
。
选择类别Libraries
然后单击Add...
键入org.openide.util
然后单击OK
。 这会将依赖项添加到您的project.xml
文件中。
在MyPlugin类上按ALT + ENTER ,然后选择Implement all abstract methods
。
最后一件事,将此行添加到manifest.mf
文件。 OpenIDE-Module-Install: org/myorg/myplugin/MyPlugin.class
现在,将在插件加载后执行run()
方法。
记录中
让我们将println
输出输出到NetBeans IDE日志中。 首先,将记录器设置为MyPlugin类的属性。
public static final Logger log = Logger.getLogger("MyPlugin");
按ALT + ENTER导入java.util.logging.Logger 。
用log.info("MyPlugin has loaded.");
替换println
log.info("MyPlugin has loaded.");
。
自动更新您的插件
在MyPlugin包中创建一个新的Java文件UpdateHandler.java
。
用UpdateHandler.java替换此文件的内容。 搜索模块依赖性,并通过在每个import语句上按ALT + ENTER添加任何缺少的依赖性。
将这些行添加到manifest.mf
文件中。
OpenIDE-Module-Layer: org/myorg/myplugin/layer.xml
OpenIDE-Module-Implementation-Version: 201501010101
在MyPlugin包中创建一个新的XML文档。
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE filesystem PUBLIC "-//NetBeans//DTD Filesystem 1.2//EN" "http://www.netbeans.org/dtds/filesystem-1_2.dtd">
<filesystem><folder name="Services"><folder name="AutoupdateType"><file name="org_myorg_myplugin_update_center.instance"><attr name="displayName" bundlevalue="org.myorg.myplugin.Bundle#Services/AutoupdateType/org_myorg_myplugin_update_center.instance"/><attr name="enabled" boolvalue="true"/><attr name="instanceCreate" methodvalue="org.netbeans.modules.autoupdate.updateprovider.AutoupdateCatalogFactory.createUpdateProvider"/><attr name="instanceOf" stringvalue="org.netbeans.spi.autoupdate.UpdateProvider"/><attr name="url" bundlevalue="org.myorg.myplugin.Bundle#org_myorg_myplugin_update_center"/></file></folder></folder>
</filesystem>
将此代码添加到run()
方法内的MyPlugin类中。
WindowManager.getDefault().invokeWhenUIReady(new Runnable () {@Overridepublic void run() {UpdateHandler.checkAndHandleUpdates();}
});
将这些行添加到Bundle.properties
文件中:
Services/AutoupdateType/org_myorg_myplugin_update_center.instance=MyPlugin
UpdateHandler.NewModules=false
org_myorg_myplugin_update_center=https\://example.com/updates.xml
现在,每次NetBeans重新启动并启动您的插件时,它将通过从example.com下载updates.xml
来检查更新。
您的updates.xml文件告诉NetBeans从何处获取插件的新NBM。 要创建用于发布插件的NBM,请右键单击MyPlugin项目,然后选择Create NBM
。 NBM文件是您将发布到NetBeans插件门户的文件 。
有关在GitHub上托管updates.xml
的示例,请查看WakaTime NetBeans插件中的 update.xml和对应的Bundle.properties 。
翻译自: https://www.javacodegeeks.com/2015/02/write-netbeans-plugin.html
netbeans插件
netbeans插件_如何编写NetBeans插件相关推荐
- html组态插件_组态 web组态 插件 编辑器 使用说明书
一.插件目录 init.json 插件初始化配置 initConfig.js 插件初始化方法 module_config.json 所有的组件配置都放在这里,要添加组件需要在这里面添加. exampl ...
- java实现语法高亮插件_通用代码高亮插件(SyntaxHighlighter)
写这篇博文的起源是我想把自己的博客弄的更加美观,相信你也一样. 首先,我要说SyntaxHighlighter插件的实现方式及应用示例,然后再说明如何将其应用到自己的博客,使博客的代码着色更加美观. ...
- chrome后台扫描插件_被动扫描器之插件篇
最近被动扫描器的话题如火如荼,好多公司都在做自己的被动扫描器.而获取质量高的流量是被动扫描器起作用的关键.笔者主要开发了两个被动扫描器的插件,r-forwarder 以及 r-forwarder-bu ...
- ps光效插件_全套光效PS插件(2019),只有你想不到的,没有它做不到的PS特效...
小优姐姐又来给你们送福利啦,一定要看完文章哦,末尾有惊喜(*^▽^*) 好啦,言归正传,你们是不是每次拍照的时候都想拥有一束非常好的光线效果呀 如果光线太强,拍照片的时候不仅刺眼而且还会遮挡住你的照片 ...
- Vue插件_自己封装插件_以及使用自定义插件---vue工作笔记0017
然后我们再来看插件的使用. vue官网上也提供了,怎么样来自己开发插件. 我们自己开发一个插件,并且使用 首先我们把插件包括在一个函数中去, (function(){ })()
- vst和vst3插件_如何使用VST插件改善Twitch流音频
vst和vst3插件 Twitch streamers with noisy microphones will be happy to hear that OBS, the most popular ...
- composer常用插件_醉于Composer插件的强大功能
composer常用插件 Composer is the sharpest tool in the toolbox of the modern PHP developer. The days of m ...
- bashsupport插件_如何用 bash-support 插件将 Vim 编辑器打造成编写 Bash 脚本的 IDE
IDE(集成开发环境)就是这样一个软件,它为了最大化程序员生产效率,提供了很多编程所需的设施和组件. IDE 将所有开发工作集中到一个程序中,使得程序员可以编写.修改.编译.部署以及调试程序. 在这篇 ...
- maven 版本号插件_测试Maven版本插件自动递增版本号
maven 版本号插件 抽象 Maven版本插件是一个非常强大的工具,我在很大程度上依赖于它来协调软件版本. 通常,软件发行版本号遵循简单的1.0.0.0-SNAPSHOT格式. 但是最近我需要在版本 ...
最新文章
- 老板的亲戚给我当助手?
- Notepad++免费开源文本编辑器
- jQuery的prev next
- JVM--对象的实例化过程
- 基于android的考勤管理系统,基于Android的考勤管理系统的设计与实现
- unity 下一帧执行_Unity中的Havok Physics物理引擎
- HP刀片带外管理系统OA各功能实例示范
- 短视频解析易语言代码
- LabVIEW参考资料汇总
- 无线通信设备安装工程概预算编制_祁东设备安装工程施工承包-设计安装_天霖工程...
- 史上最新最全的Android培训机构大揭秘
- 计算机维修兴趣小组,计算机兴趣小组章程
- pb定时器timer
- mail163邮箱官网如何注册?
- 基金训练营学习笔记4-指数基金
- 内蒙古自治区鄂尔多斯市谷歌高清卫星地图下载
- 9.png为什么可以保证图片不失真,.9.png操作详解————针对原文有补充
- Adobe 软件共享
- 记录一次前途迷茫的选择
- Dmaven.multiModuleProjectDirectory system propery is not set. Check $M2_HOME environment variable a