Skip to content
戴忠 edited this page Feb 22, 2017 · 4 revisions

Quick Start

项目地址 https://github.com/dzh/jframe
演示示例工程 jframe/jframe-demo

Jframe Feature

  • 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

How To Use Launcher Api

  • pom依赖jframe-launcher
  • 自定以Launcher实现,可集成DefLauncher
  • config配置app.launcher
  • vmargs配置

How To Develop Plugin

  • 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中调式
  • 远程调式

Clone this wiki locally