有段时间没有更新IDEA了,早上看到 IntelliJ IDEA 2024.1 EAP 5发布的邮件提示,瞄了一眼,发现真的是越来越强了,其中不少功能对我来说还是非常有用的。也许这些能力对关注DD的小伙伴也有帮助,所以搞篇博客介绍和推荐一下。
本文转载自:https://www.didispace.com/article/news/idea-2024-1-eap5.html
Spring、Quarkus等主流框架的支持增强
- Search Everywhere功能中增加
Endpoints选项卡
具体如下图所示:
![图片[1]-IDEA 2024.1:增强对Spring的支持、GitHub Action的支持等-效率工具论坛-资源-SpringForAll社区](https://static.didispace.com/images3/2facc800a9536126a18a5a5cb5f3e283.png)
开发者可以在这里直接搜索通过Spring、Quarkus、Micronaut、Ktor实现的接口来找到具体的代码实现位置。这个功能非常实用,尤其是对于接手老项目的开发者来说,可以快速的定位接口实现来完成开发任务或问题排查。
- 增强Spring Bean的自动补全和自动装配
IntelliJ IDEA 现在为应用程序上下文中的所有 Bean 提供自动补全功能,并自动连接它们。
如果 bean 通过构造函数具有自动装配依赖项,则相关字段也会通过构造函数自动装配。
同样,如果通过字段或 Lombok 的 @RequiredArgsConstructor 注释注入依赖项,则新 bean 会自动通过字段连接。
![图片[2]-IDEA 2024.1:增强对Spring的支持、GitHub Action的支持等-效率工具论坛-资源-SpringForAll社区](https://www.didispace.com/gif/idea/idea-spring-completion.gif)
- 增强 Spring 模型图
在该版本中用户访问Spring模型图变得更加容易,可以如下图这样点击Spring标识的行标记直接跳转:
![图片[3]-IDEA 2024.1:增强对Spring的支持、GitHub Action的支持等-效率工具论坛-资源-SpringForAll社区](https://static.didispace.com/images3/6a988d8350dab114f7fa617e560d9fc1.png)
也可以使用快捷键 ⌥⏎ (MacOS) 或 Alt+Enter(Windows)来生成和跳转。
同时,该版本还引入了新的图标,增强了 Spring 模型图的可视化内容,如:Components、Controllers、Repositories。此外,您现在可以方便地切换库中 Bean 的可见性(默认情况下是隐藏的)。
![图片[4]-IDEA 2024.1:增强对Spring的支持、GitHub Action的支持等-效率工具论坛-资源-SpringForAll社区](https://static.didispace.com/images3/32d67d8f8ea1db19518cb92281b97f14.png)
HTTP Client的改进
HTTP Client现在提供更多身份验证选项,包括 PKCE 授权代码和设备授予流程。它还支持令牌和身份验证请求的额外参数。
![图片[5]-IDEA 2024.1:增强对Spring的支持、GitHub Action的支持等-效率工具论坛-资源-SpringForAll社区](https://static.didispace.com/images3/ba7e85f5af2a1712a39c3fde172115c9.png)
现在它可以自动处理 code_challenge 和 passes code_verifier 的生成,以便在 PKCE 请求中检索令牌。
![图片[6]-IDEA 2024.1:增强对Spring的支持、GitHub Action的支持等-效率工具论坛-资源-SpringForAll社区](https://static.didispace.com/images3/25d8bc95c268a18d3aa3200517ddedb1.png)
这个版本的HTTP Client 可以使用 Netty 作为其低级网络库。通过支持 SSL、代理和 HTTP/2,使我们能够在 HTTP 客户端中实现 HTTP/2 的支持。
![图片[7]-IDEA 2024.1:增强对Spring的支持、GitHub Action的支持等-效率工具论坛-资源-SpringForAll社区](https://static.didispace.com/images3/0c64354f950da92b2f21ecc2196a4a05.png)
此外,HTTP Client的工具栏外观,也与新的 UI 风格保持一致,提供更加美观的用户体验。
![图片[8]-IDEA 2024.1:增强对Spring的支持、GitHub Action的支持等-效率工具论坛-资源-SpringForAll社区](https://static.didispace.com/images3/77135a82ff6da74a7a261beef79a65b7.png)
GitHub Action的支持增强
- Workflow 上下文的支持
现在可以为各种 GitHub Action上下文引入了广泛的自动完成支持,包括github.*、env.*、steps.*和inputs.*。
![图片[9]-IDEA 2024.1:增强对Spring的支持、GitHub Action的支持等-效率工具论坛-资源-SpringForAll社区](https://www.didispace.com/gif/idea/Workflow-context-support.gif)
这个优化非常有用,可以有效的降低编写复杂工作流脚本的过程,开发人员不用再去频繁的搜索上下文中涉及的参数了。
该优化在YAML文件配置中也同样有效:
![图片[10]-IDEA 2024.1:增强对Spring的支持、GitHub Action的支持等-效率工具论坛-资源-SpringForAll社区](https://www.didispace.com/gif/idea/complete-YAML-structures.gif)
在YAML文件中,开发者还可以使用 branding 功能使用特定图标和颜色指示器自定义 GitHub 上操作的外观。
此功能使操作创建者能够在 GitHub Marketplace 和工作流程中直观地区分他们的操作,使它们更易于识别和用户友好。通过在 action.yml 文件中指定图标和颜色,开发人员可以一目了然地传达其操作的目的,从而增强整体用户体验。这种可视化定制有助于对操作进行分类,并帮助用户快速识别 CI/CD 管道所需的工具。
![图片[11]-IDEA 2024.1:增强对Spring的支持、GitHub Action的支持等-效率工具论坛-资源-SpringForAll社区](https://www.didispace.com/gif/idea/Branding-feature.gif)
- Docker 镜像自动补全
此增强功能在 GitHub 工作流程文件中提供image和tag建议,从而更轻松地将 Docker 容器集成到您的操作中。
![图片[12]-IDEA 2024.1:增强对Spring的支持、GitHub Action的支持等-效率工具论坛-资源-SpringForAll社区](https://www.didispace.com/gif/idea/Docker-image-code-completion.gif)
- JavaScript 文件路径补全
文件路径完成功能会自动建议文件路径,从而简化 JavaScript 操作的配置并简化工作流程执行。
![图片[13]-IDEA 2024.1:增强对Spring的支持、GitHub Action的支持等-效率工具论坛-资源-SpringForAll社区](https://www.didispace.com/gif/idea/Java-script-path-completion.gif)
其他更新
-
优化JSON schema的处理: 优化了 JSON 模式验证和完成背后的代码。因此,IDE 现在可以更快地处理此任务并减少内存消耗。在使用 Azure Pipelines 的现实文件中,架构检查现在速度提高了 10 倍。
-
现在可以在所有常见场景中轻松完成 HTTP Header,例如使用 Spring WebClient 和 RestAssured 测试。当遇到预期值时,会自动出现完成弹出窗口。
![图片[14]-IDEA 2024.1:增强对Spring的支持、GitHub Action的支持等-效率工具论坛-资源-SpringForAll社区](https://www.didispace.com/gif/idea/idea-http-header-autocomplete.gif)
另外,DD最近把博客重新增加了板块,正在维护几个有意思的长期连载专栏,其中一个就是《玩转IDEA》,这次换了工具,直接采用电子文档的形式,阅读体验更好,对这些内容感兴趣的,可以关注起来!