当前位置:   article > 正文

metersphere-idea-plugin官网插件调研_metersphere idea 插件同步接口格式要求

metersphere idea 插件同步接口格式要求

一、背景

metersphere-idea-plugin官网插件调研

二、参考资料

MeterSphere - IntelliJ IDEs Plugin | Marketplace

https://github.com/metersphere/metersphere-idea-plugin

【最佳实践】MeterSphere 之 IDEA 接口同步插件 - FIT2CLOUD 知识库

https://www.cnblogs.com/hama1993/p/12034514.html

http://10.165.34.89:8081/ (admin / metersphere)

三、安装官网插件体验

【最佳实践】MeterSphere 之 IDEA 接口同步插件 - FIT2CLOUD 知识库

四、插件如何开发

本次演示JDK版本:11.0.14,IDEA 版本:2020.3.2 ,Gradle版本:6.7, metersphere-idea-plugin 版本:官网分支v2.0,官网MS版本:v2.10.4-lts-a23f75d9, 官网MS地址: http://10.165.34.89:8081/ ,其他版本没有验证可行性,请根据自身开发环境选择合适的版本进行尝试。

4.1、环境搭建

1、安装IDEA 2020.3.2

2、安装Gradle 6.7和jdk11

3、clone  metersphere-idea-plugin 项目,分支v2.0

https://github.com/metersphere/metersphere-idea-plugin

4、配置IDEA Gradle安装目录信息和指定JDK版本

 ​

​ ​

 ​

4.2、项目构建和调试

1、打开buid.gralde文件添加阿里云maven仓库地址作为下载源

maven { url "http://maven.aliyun.com/nexus/content/groups/public/" }

 ​

2、选择Gradle菜单栏 → 选择intellij → 选择 buildPlugin, 构建项目

​ ​

3、选择Gradle菜单栏 → 选择intellij → 选择 runIdle → 右击 → 选择Debug 'metersphere-idea-plugin', 调试项目, 会启动一个新的2023.03版本IDEA

​ ​

 ​

4、在调试后启动的IDEA里打开一个springboot项目,例如node-controller

 ​

5、在调试后启动的IDEA里打开 Preferences → Other Settings → MeterSphere, 配置metersphere相关信息,具体如何配置参考官网【最佳实践】MeterSphere 之 IDEA 接口同步插件 - FIT2CLOUD 知识库

 ​

6、在metersphere-idea-plugin项目的IDEA里打开ExportToMSAction文件进行断点,在调试后启动的IDEA里打开一个controller文件,右击"Export MeterSphere"尝试调试同步,例如JmeterExecuteController

​ ​

​ ​

 

 ​

4.3 、插件生成

1、选择Gradle菜单栏 → 选择intellij → 选择 buildPlugin, 构建项目生成插件,插件在build/distributions目录下

​ ​

 ​

五、核心代码讲解

1、.build.gradle文件,注意sourceCompatibility (编译 Java 代码时应使用的 Java 版本)和 intellij版本配置intellij.version(打插件包的时候用idea什么版本的依赖包打,一般就填当前IDEA的版本号即可)

​ ​

2、plugin.xml, ExportToMSAction和ExportToPostmanAction 对应菜单栏中的"Export MeterSphere"和“Export Postman”

 ​

​ ​

3、导出

 ​

六、总结

1、metersphere-idea插件原理就是通过IDEA PSI API获取类信息,如果有javadoc注解,用javadoc注解信息命名,最后封装成postman结构,调用ms的导入接口进行同步

2、MS官网版本也不能满足所有的情况,例如接口参数是Map<String,Person>,  需要进一步分析代码是否满足所有Rest请求和响应所有情况

3、兼容IDEA版本也要进行调试

4、build.gradle文件中intellij.version的值在构建项目时会去下载对应的资源包,如果无法下载尝试用梯子

本文内容由网友自发贡献,转载请注明出处:https://www.wpsshop.cn/w/喵喵爱编程/article/detail/949926
推荐阅读
相关标签
  

闽ICP备14008679号