之前已经写了一篇关于《几种Java热插拔技术实现总结》,在该文中我总结了好几种Java实现热插拔的技术,其中各有优缺点,在这篇文章我将介绍Java热插拔技术在我司项目中的实践。

前言

在开始之前,先看下插件系统的整体框架

  • 插件开发模拟环境
    “插件开发模拟环境”主要用于插件的开发和测试,一个独立项目,提供给插件开发人员使用。开发模拟环境依赖插件核心包插件依赖的主程序包
    插件核心包-负责插件的加载,安装、注册、卸载
    插件依赖的主程序包-提供插件开发测试的主程序依赖
  • 主程序
    插件的正式安装使用环境,线上环境。插件在本地开发测试完成后,通过插件管理页面安装到线上环境进行插件验证。可以分多个环境,线上dev环境提供插件的线上验证,待验证完成后,再发布到prod环境。

代码实现

插件加载流程


在监听到Spring Boot启动后,插件开始加载,从配置文件中获取插件配置、创建插件监听器(用于主程序监听插件启动、停止事件&

基于Java的插件化集成项目实践相关推荐

  1. Android插件化原理和实践 (一) 之 插件化简介和基本原理简述

    1 插件化简介 Android插件化技术是一种这几年间非常火爆的技术,也是只有在中国才流行起来的技术,这几年间每每开发者大会上几乎都会提起关于插件化技术和相关方向.在国内各大互联网公司无不都有自己的插 ...

  2. 基于Armitage的MSF自动化集成攻击实践

    基于Armitage的MSF自动化集成攻击实践 目录 0x01 实践环境 0x02 预备知识 0x03 Armitage基础配置 0x04 Nmap:Armitage下信息搜集与漏洞扫描 0x05 A ...

  3. DockOne微信分享( 九十):猎豹移动基于CoreOS在AWS上的项目实践

    本文讲的是DockOne微信分享( 九十):猎豹移动基于CoreOS在AWS上的项目实践[编者的话]本次分享介绍基于AWS的EC2服务如何设计和搭建适合自己业务的架构方案实现全球多region部署,介 ...

  4. Android插件化开发指南——实践之仿酷狗音乐首页

    文章目录 1. 前言 2. 布局分析 3. 底部导航栏的实现 4. 顶部导航栏和ViewPager+Fragment的关联 1. 前言 在Android插件化开发指南--2.15 实现一个音乐播放器A ...

  5. 基于JAVA springboot + MYSQL +VUE的项目管理系统(含数据库),包括工时统计、原型预览、效果图管理等

    平台介绍 无鱼工时管理系统,是一款轻量级工时记录和管理工具,包括项目管理,工时上报,工时日报,工时统计等功能. 无鱼工时管理系统可通过员工工时上报的方式,来记录项目所花费的工时,帮助企业进行项目工时统 ...

  6. 基于java+swing的潜艇大战项目游戏(java+swing)

    基于java+swing的潜艇大战项目游戏(java+swing) 功能简介: Java swing实现的一款小游戏潜艇大战的项目源码 适用 课程设计,大作业,毕业设计,项目练习,学习演示等 bool ...

  7. Android组件化与插件化开发项目实战整理分享(含支付宝、360、美团、滴滴等大厂项目实战)

    小公司不说,但是在大公司的项目发展到一定程度,就必须进行模块的拆分.模块化是一种指导理念,其核心思想就是分而治之.降低耦合.而在 Android 开发的实践,目前有两种途径来实现,一个是组件化,一个是 ...

  8. 应用实践 | 特步集团基于 Apache Doris 的零售数据仓库项目实践

    背景 特步集团有限公司是中国领先的体育用品企业之一,主要从事运动鞋.服装及配饰的设计.开发.制造和销售. 为了提高特步零售 BI 主题数据分析的准确性和时效性,降低对 SAP HANA 平台的依赖,2 ...

  9. 基于java swing 和oracle的项目管理系统

    源码下载 http://www.byamd.xyz/hui-zong-1/ 实习题目 1.需求分析 (1).背景: 项目管理系统,是反映公司员工资料,项目负责部门和项目进度,设备采购软件系统,是管理项 ...

最新文章

  1. java inner class,C# Inner Class vs. java 的inner class比较-JSP教程,Java技巧及代码
  2. 在任意的远程桌面的session中运行指定的程序
  3. Javaweb异常提示信息统一处理
  4. JAVA SE学习day_15:thread线程池
  5. 怎么把html4换文件夹打不开,HTML4
  6. 用Reflector和FileDisassembler配合反编译.net Windows程序
  7. 49字母异位词分组(哈希表)
  8. Place the Guards
  9. C#中使用JavaScriptSerializer类实现序列化与反序列化
  10. 五分钟教你使用vue-cli3创建项目(三种创建方式,小白入门必看)
  11. 超级卡特兰数(bzoj 4706: B君的多边形)
  12. Web前端开发如何提高技术水平!
  13. Nodejs 离线文档下载
  14. 工作流引擎Activiti详解
  15. 华为第1书:《华为交换机学习指南》当当网预售中
  16. nohub java -jar xx.jar /dev/null 21 以及/dev/null是什么 21又是什么?
  17. 台电平板(X80HD)刷WIN10
  18. nagios原理介绍以及安装部署配置使用
  19. LOL英雄联盟打不了文字,打字就一闪一闪的,英文可以,解决方式
  20. 四旋翼飞行器的原理研究和建模

热门文章

  1. 初入职场不可不知的八大说话技巧
  2. 头条搜索流量与展示量说明
  3. 英文名字大全(男篇) 1
  4. python学习之旅
  5. 机器人博客等自媒体逐渐回归平静
  6. 伤感经典语录30条精选_人的眼睛有5.76亿像素 但却终究看不懂人
  7. 施华洛世奇揭幕全新品牌视觉形象,重构天鹅形象视觉标识
  8. 分享104个PHP源码,总有一款适合您
  9. 极米投屏h2服务器响应失败,排位赛总失败? 这样玩《王者荣耀》让你战绩飙升...
  10. 在合并单元格中数组公式无效_Excel合并单元格查找,公式没错,结果为0,你知道这是什么原因吗...