IntelliJ IDEA 2023.2 EAP 7 引入了一系列值得注意的改进,包括面向插件开发人员的 LSP 支持、OpenAPI 和 Swagger 文件的 Redoc UI 预览,以及使用 HTTP 客户端、Spring 和其他技术和框架的改进。
面向插件开发人员的 LSP 支持
通过此 EAP 版本引入了一项重要功能:面向插件开发人员的 LSP API。LSP API 主要针对想要在 IDE 中使用特定 LSP 服务器进行编码辅助的插件开发人员。如果你创建了自己的编程语言或框架,则可以通过编写 LSP 服务器和插件来在 IDE 中获得支持。
目前,LSP 支持包括错误和警告高亮显示、快速修复、代码完成以及声明导航。更多功能即将推出。
一个最小的全功能插件只需要编写几行代码。该插件实现了 com.intellij.platform.lsp.api.LspServerSupportProvider 接口,并指定它将支持哪些文件以及如何启动服务器。JetBrains 的 Prisma ORM 插件是开源的,可以用作参考实现。该代码库相当大,但有一些类与基于 LSP 的支持相关 - 可参阅 org.intellij.prisma.ide.lsp.* 包。
OpenAPI 和 Swagger 文件的 Redoc UI 预览
IntelliJ IDEA 现在支持 OpenAPI 和 Swagger 规范文件(包括 YAML 和 JSON 文件)的 Redoc UI 预览,允许你在 IDE 内的 Redoc 和 Swagger UI 之间切换。
HTTP Client CLI 中对 GraphQL 和 WebSocket 的支持
现在可以使用 IntelliJ IDEA 中的 HTTPClient CLI 与 GraphQL API 交互,并与服务建立 WebSocket 连接,例如用于测试或自动化脚本。
检查 YAML 文件中的 Norway 问题
在 IntelliJ IDEA 2023.2 EAP 7 中引入了一项新的检查,以消除所谓的 Norway 问题,并防止对 YAML 文件中 Boolean values 的意外误解。
当列表主要由字符串组成但包含一个 Boolean-like literal 时,IntelliJ IDEA 将突出显示该文字,指示潜在的不一致,并建议为其添加引号。如果列表主要由 Boolean-like literals(例如 true、false、off、on、yes、no)组成,则任何偏离此模式的字词都会突出显示为可能的错误,尽管在这种情况下没有任何具体的快速修复方法建议。
Spring 配置 bean 不再需要注释处理器
简化了在 IntelliJ IDEA 中使用 Spring 中的自定义配置 bean 时的用户体验。IDE 现在在属性和 YAML 配置文件中提供代码完成和验证,而无需设置 Spring 配置注释处理器。
Gradle 和 Maven 项目的 JUnit 持续测试
扩展了 JUnit 的自动测试功能,使其与 Maven 和 Gradle 构建系统兼容。此外,还使激活连续测试模式变得更加容易。
更多详情可查看官方博客。