IDEA Web渲染插件开发(一)— 使用JCEF
在IDEA插件开发的教程中,我发现 秋水畏寒 的文章很实用。然而关于在IDEA中加载Web页面的教程相对较少,官方文档也不够详尽。本系列将探讨如何利用JCEF开发这样的插件。
驱动开发此插件的原因是IDEA支持markdown文件实时渲染,例如:
通过观察,我推测IDEA使用了JCEF进行渲染,任务管理器中的信息证实了这一猜测。在JetBrains官网的插件开发文档中,找到了关于JCEF的官方资料:JCEF - Java Chromium Embedded Framework | IntelliJ Platform Plugin SDK。
现在,我们从头开始,目标是创建一个能加载Web页面的IDEA插件。
首先,创建一个名为intellij-jcef-plugin的IntelliJ Platform Plugin,并配置Gradle项目,完整搭建项目后,将在GitHub上分享。
目标是为IDEA侧边栏添加一个显示Web页面的界面,类似于Gradle和Maven插件的显示方式。
根据官方文档,我们需要利用ToolWindow组件,尤其是ToolWindowFactory,它负责创建插件中的UI。具体步骤包括:
实现MyToolWindowFactory,并重写createToolWindowContent方法,接收Project和ToolWindow对象,用于构建UI并将其添加到ToolWindow中。
在plugin.xml中注册MyToolWindowFactory,确保id属性设置正确。
在开发过程中,可能遇到的问题包括调试环境中的乱码、Gradle下载问题和网络连接问题。解决这些问题后,可以看到插件安装成功并在IDEA中显示。
在github上,我已将基础ToolWindow开发和Web页面ToolWindow开发的代码分阶段记录,地址如下:
基础ToolWindow开发:simple ToolWindow Content - w4ngzhen/intellij-jcef-plugin@bf2ca8e
Web页面ToolWindow开发:web ToolWindow Content - w4ngzhen/intellij-jcef-plugin@45604d3
多重随机标签