-
Notifications
You must be signed in to change notification settings - Fork 15
Jframe Outline
戴忠 edited this page Feb 22, 2017
·
4 revisions
项目地址 https://github.com/dzh/jframe
演示示例工程 jframe/jframe-demo
-
jfv1.x可运行于jdk1.5 or higher
-
Launcher启动器
- Main 启动launcher
- MainLauncher
- jframe.sh定制MainLauncher
- daemon or not
- 读取conf/config.properties|vmargs, 启动app.launcher
- Config 属性配置
- 默认conf/config.properties, 或自定义-Dfile.config=文件路径
- 支持变量引用,格式${变量},变量可以是系统属性或者config的key
-
frame插件框架
- Frame FrameLauncher 启动Frame
- UnitManager 管理Unit - Unit接口作用是具备基本start/stop功能的胶合层 - 默认加载FrameUnit和PluginUnit - conf/unit.properties定义加载哪些Unit
- PluginUnit 实现Plugin功能
- PluginServiceClassLoader 实现服务注入功能的Plugin加载器(待改进实现)
- PluginContext 插件生命周期管理
- Plugin 插件生命周期类
- @Plugin注解配置行为,如启动、停止次序
- Dispatcher消息分发器
- Plugin之间的消息通讯, 默认实现DefDispatcher,config定制消息行为,如
context.dispatcher = jframe.ext.dispatch.ActivemqDispatcher- @Message注解Plugin的消息行为,如接收的消息类型、启动发送/接收功能 - 可发消息PluginSender,可读消息PluginRecver - 其他注解jframe.core.plugin.annotation
- pom依赖jframe-launcher
- 自定以Launcher实现,可集成DefLauncher
- config配置app.launcher
- vmargs配置
- Simple Plugin
- 定义Plugin类,可以继承DefPlugin、PluginSender、PluginRecver、PluginSenderRecver
- META-INF/plugin.properties配置插件
- Plugin-Name 插件名,唯一性
- Plugin-Class 插件类
- More Feature - Plugin-Service 插件里的Service类 - Import-Class 需要用到的其他插件中的Export-Class - Import-Plugin 需要用到的其他插件 - Export-Class 将类导出给其他插件可见
- 在eclipse中调式
- 远程调式