user-interface - Spring Boot 管理员添加自定义选项卡
问题描述
但是文档和示例项目https://github.com/codecentric/spring-boot-admin/tree/2.1.1/spring-boot-admin-samples/spring-boot-admin-sample-custom-ui没有似乎有助于理解如何去做。
我通过阅读文档和示例的理解是 ui 是一个单独的模块。
我似乎缺少的部分是如何将它们捆绑在一起 ui 模块和 Spring Boot 管理服务器并为它们提供服务。
这是我迄今为止尝试过的:https ://github.com/anandsunderraman/custom-spring-boot-admin/tree/master
解决方案
是否成功尝试在 Spring Boot Admin Server 中添加自定义选项卡。
先决条件:
- 必须安装 npm/node 并添加到 $PATH
- 节点版本必须 > 8.0.0。
- 如果没有,则从NodeSite下载最新的节点
- Spring Boot Admin 版本 2.1.1
- 处于工作状态的管理员/客户。
遵循以下步骤(生成-构建自定义 UI/在服务器中集成自定义 UI/在客户端实现端点):
生成/构建自定义 UI:
- 在本地检查了spring-boot-admin-custom-sample-ui。我以样品一为例
cd <spring-boot-admin-custom-sample-ui-directory>
- 运行命令
npm install
- 上面的命令将安装所有包。您可能会收到很少的警告(对于对等依赖项),因此请尝试通过
npm install package-name@version-number
手动安装()对等依赖项来解决它们。这些是 npm 包依赖。
- 上面的命令将安装所有包。您可能会收到很少的警告(对于对等依赖项),因此请尝试通过
- 在 Intellij 中导入项目并运行 maven install 命令。
- 这将执行
exec-maven-plugin
并创建一个 target/dist 目录。如果出现任何错误,请尝试解决该问题。我遇到了一些错误,例如找不到节点版本问题/vue-template-compiler。 - 如果出现 vue-template-compiler not found 错误,则执行
npm install vue-template-compiler@2.5.16
- 一旦 maven 安装完成,它应该生成新的自定义选项卡所需的 UI。现在这需要集成到 Admin Server 中。Maven install 也将安装
spring-boot-admin-sample-custom-ui
在本地 repo 上。
- 这将执行
在管理服务器中集成客户 UI
只需在 application.properties 中添加新属性(为了注入新的 UI):
spring.boot.admin.ui.cache.no-cache=true
spring.boot.admin.ui.extension-resource-locations=file:spring-boot-admin-sample-custom-ui-directory-path/target/dist/
spring.boot.admin.ui.cache-templates=false
spring-boot-admin-sample-custom-ui
在服务器 pom.xml 中添加依赖项。这是建立在第 4 步之上的。启动管理服务器。
在客户端实现端点:
添加以下端点:
@Endpoint(id = "custom") public class CustomEndpoint { @ReadOperation public String getHello(){ return "Hello" ; } }
@Bean public CustomEndpoint customEndpoint() { return new CustomEndpoint(); }
这都是关于样本终点的。您可以编写自己的视图并按照类似的步骤操作。视图必须作为 Vue.js 组件实现。
希望这将简化在 spring boot admin 中添加新的自定义选项卡的过程。
推荐阅读
- python - 如何使用 Vispy 将视觉图像转换为极坐标
- python - 如果一组字符串为空,如何使用循环检查?
- sql - SQL Server 代理作业安全密码
- wordpress - 如何将affiliatewp 选择会员字段添加到最终会员注册表
- python - Pandas - 删除 x 列中带有字符串 a 和 y 列中带有字符串 b 的行
- python - 拆分列表列表中的元素,该列表是一个字符串
- macos - `/usr/bin/ctags` 被执行,而不是 `/usr/local/bin/ctags`,当 `/usr/local/bin` 出现在 $PATH 中的 `/usr/bin` 之前
- python-3.x - 使用 neo4j 时捕获“ClientError”异常(以及通常如何捕获错误中的第一个异常)
- reactjs - 链接到反应中的单个帖子
- python - Plotly Dash Multiple 显示我收到错误的原因