很多插件都需要提供用户配置参数的入口,这里以free-mybatis-plugin插件为例,我们想要用户配置方法匹配模版,例如dao层中insert,add等关键字开头的方法在mapper中生成insert语句。
创建GUI配置窗口
IDEA中可以直接创建一个GUI窗口:

弹出创建窗口:

名字自定,layout默认使用GridLayoutManager即可。
然后就可以拖拽编辑UI界面了。
第一次用会觉得超级难用!在排版的时候,如果想新加一行或者一列,拖拽组件到原来行的边缘,释放后会自动新增加一行。

给需要取值的组件填写filed name属性,这样在生成的类中会包含对应的成员变量:
添加配置项
创建完GUI窗口后,需要在IDEA配置窗口中添加入口,那就需要实现SearchableConfigurable接口,并注册到plugin.xml中。
之后在plugin.xml中注册:
这样就可以在IDEA setting窗口中见到我们的配置项了:
持久化配置
上面我们说了如何让用户修改插件配置,那当IDEA重启时,我们想让配置持久化到文件中,可以实现PersistentStateComponent接口:
其中@State注解指明了xml中根元素的名字和xml文件名称。
配置文件储存位置:/Library/Caches/IntelliJIdea2018.2/plugins-sandbox/config/options/mybatis.xml
即在沙箱目录下的/config/options/mybatis.xml中。
当然,如果插件正式发布安装后,会保存到正式库目录中。