Skip to content

示例健康插件

Maven 模块:mms-plugin-sample-health。用于与 mms-plugin-host 联调:SPIPluginHealthContributorPluginBeanRegistrarHOST_MVC 分发。

适合谁读

官方「最小可运行」示例:装好后能用 /demo/ping 证明 HOST_MVC 通了,用 /system/pluginHost/health 证明 健康检查 登记成功。不涉及复杂业务权限(仅需登录)。

标识与运行模式

插件 IDmms.plugin.sample-health
runtimeModeHOST_MVC
hostServicesContractVersion1(示例偏早;新插件建议对齐当前宿主能力版本)
入口类com.sxpcwlkj.plugin.sample.health.SampleHealthPlugin

能力摘要

同一实现类 SampleHealthPlugin 同时实现 MmsPluginPluginHealthContributor

  • onLoad:向宿主注册逻辑名 sampleHealthMarker 的占位 Bean。
  • health():返回 JSON 字符串表示探针 UP(演示用)。
  • HTTP:示例 Controller 映射 /demo/ping 等,完整路径前缀为 /plugin/mms.plugin.sample-health/(与宿主分发规则一致)。

数据表(演示)

plugin.json 声明 pluginTablePrefixplugin_sample_health_,用于演示 PluginDataAccess 白名单;日常联调可不使用 JDBC。

构建与安装

  • 普通 mvn package 产出可直接放入该版本 lib/ 的 JAR(示例依赖少,一般为瘦包即可;以当前 pom 为准)。
  • 上架/版本号以 JAR 内 META-INF/mms/plugin.json 为准。

Demo:引入插件

bash
cd mms-plugins/mms-plugin-sample-health
mvn -DskipTests package

target/mms-plugin-sample-health-*.jar 通过 插件市场 安装并激活(或按 JAR 插件入门 手工 lib/ 布局)。本示例 无独立业务权限码/demo/* 仅需登录即可访问(以当前 Sa-Token 规则为准)。

Demo:调用能力

为管理端接口根。

HTTP

http
GET {{apiBase}}/plugin/mms.plugin.sample-health/demo/ping
Authorization: <token>
http
GET {{apiBase}}/plugin/mms.plugin.sample-health/demo/echo/hello
Authorization: <token>

期望 .../demo/ping 响应体:pong.../demo/echo/hellohello

运维 invoke

本示例 MmsPlugin 实现类未声明额外公有业务方法(仅生命周期)。验证 PluginBeanRegistrar 可用 GET /system/pluginHost/manifests 或宿主调试;若练习 invoke,请改用 企业微信DeepL 分册。

参见

Released under the MIT License.