3.0 KiB
3.0 KiB
Flowable DevOps 插件目录
这是外部插件的存放目录。
📁 目录结构
plugins/
├── README.md # 本文件
├── http-request-plugin/ # HTTP请求插件(示例)
│ ├── http-request-1.0.0.jar
│ └── plugin.json
└── custom-plugin/ # 你的自定义插件
├── custom-plugin-1.0.0.jar
└── plugin.json
🔌 如何添加插件
方法1:复制JAR文件(第二期支持)
- 将插件JAR文件复制到此目录
- 确保插件包含
plugin.json清单文件 - 重启应用或触发热加载
方法2:通过API上传(第二期支持)
curl -X POST http://localhost:8080/api/plugins/upload \
-F "file=@my-plugin-1.0.0.jar"
方法3:内置插件(第一期推荐)
将插件代码直接添加到项目中:
- 在
src/main/java/.../workflow/node/创建节点类 - 添加
@NodePlugin注解 - 实现
WorkflowNode接口 - 重启应用自动加载
📦 内置插件
当前系统内置以下插件:
API 接口
- HTTP Request (
http_request) - 发送HTTP请求- 版本: 1.0.0
- 作者: Flowable Team
数据转换
- Text Processor (
text_processor) - 文本处理工具- 版本: 1.0.0
- 作者: Flowable Team
- 功能: 大小写转换、字符串反转、去除空格
🛠️ 插件开发
详细开发指南请参考:docs/07-插件开发指南.md
快速示例:
@NodePlugin(
id = "my_plugin",
name = "myPlugin",
displayName = "My Plugin",
category = NodeCategory.OTHER,
version = "1.0.0"
)
@Component
public class MyPluginNode implements WorkflowNode {
// 实现接口...
}
🔧 插件管理API
查询所有插件
GET /api/plugins
启用/禁用插件
POST /api/plugins/{pluginId}/enable
POST /api/plugins/{pluginId}/disable
查看插件详情
GET /api/plugins/{pluginId}
统计信息
GET /api/plugins/statistics
⚠️ 注意事项
- 第一期:仅支持内置插件,外部JAR加载将在第二期实现
- 热加载:当前不支持,需要重启应用
- 依赖管理:插件间依赖解析在第三期实现
- 安全性:请勿加载未知来源的插件
📋 开发计划
✅ 第一期(已完成)
- 插件注解系统
- 自动扫描和注册
- 插件管理API
- 示例插件
⏳ 第二期(规划中)
- 外部JAR加载
- 独立类加载器
- 热加载支持
- 插件上传API
📅 第三期(未来)
- 插件依赖管理
- 插件市场
- 插件沙箱
- 插件评级系统
📚 相关文档
🤝 贡献
欢迎贡献新的插件!请遵循开发规范并提交Pull Request。
最后更新: 2025-01-13
版本: v1.0