November 3rd, 2022

Java on Azure Tooling的更新 – 2022年10月

Jialuo Gan
Program Manager

大家好,欢迎回到10月份的Java on Azure Tooling的更新。在这次更新中,我们将介绍我们在未来几个月的新路线图。此外,我们还对用户在IDE中直接使用Azure Functions的部署槽(deployment slots)做了一些改进,在我们最新的版本中。请下载并安装Azure Toolkit for IntelliJ。我们希望你喜欢这些功能,并享受我们的Azure工具包带来的流畅体验。那么让我们开始吧。

Roadmap 更新

让我们来展望对未来几个月的Java on Azure工具的关键投资领域。我们的目标是为Azure上的Java开发者提供一个无缝的代码到云的体验。为了实现这一目标,我们将继续确保Java开发者能够轻松管理和部署Azure服务。此外,我们还将投资于与微服务和基于容器的服务的整合,为云原生开发者提供更好的服务。

Image Zinc Roadmap chn

云原生场景支持

容器技术正在成为云原生Java应用(和一些传统Web应用)的规范,Kubernetes正在成为行业标准。容器优先的开发概念引入了新的工作流程和复杂性,但平台和工具在转移到容器应用和Azure Kubernetes服务等其他服务时,已经为开发者消除了微服务架构的复杂性。

为了满足这一需求,我们计划在我们的工具包中支持Azure Container Apps/AKS服务,在这些工具包中,Java开发人员可以开发、管理、部署和监控他们基于AKS/ACA的Java工作负载,而无需离开IDE。此外,日志、指标和分布式跟踪可以帮助开发人员监控和排除应用程序的问题。这些功能,例如远程调试,受到了开发人员的高度重视。展望未来,我们将支持从Azure Spring Apps和Azure Functions进行远程调试。我们还将研究针对Azure的丰富的Spring代码编写和IntelliJ的部署经验,比如与JHipster的整合,以帮助开发者更好地搭建脚手架项目。

与更多的Azure后端服务整合 

我们的下一个投资领域是与更多的Azure后端服务集成。在之前发布的版本中,我们在工具包支持对Azure VM和Cosmos DB服务的管理,这些功能已经被许多的Java开发者使用。

我们知道,Java开发者在将Java应用部署到Web Apps和Function时,也有对一些Azure后端服务的需求,如Event Hub和Service Bus服务。为了满足这些需求,我们正计划支持这些服务。此外,我们还将继续支持 Azure服务的最新功能。

Azure SDK参考书目优化

当开发人员在IDE中进行Azure应用时,他们很难在IDE中直接找到相关的Azure SDK,以及针对每个资源相关的示例代码。在开始使用SDK库之前,由于要进行多次上下文切换或重定向,这将会很耗费时间。因此,我们正计划提供对应的实例代码加强Azure SDK参考书的体验。在此基础上,编码方面的发现流程将与各服务的特定API或SDK保持一致,而无需在浏览器上搜索。

命令行工具支持

目前,我们的命令行工具包括Maven Plugin for Azure Web Apps/Functions/Azure Spring Apps和Gradle Plugin for Azure Web Apps/Functions。我们计划支持更多的命令来部署多模块项目,以增强我们的插件体验。我们将继续在Maven和Gradle插件中添加App Service和Functions的最新关键Java相关的功能。此外,我们还计划将我们的插件与CI/CD Pipelines 整合,如DevOps、GitHub Actions等。此外,我们还在研究使用Maven插件将Java应用部署到Azure容器应用或Azure Kubernetes的Azure托管服务的可能性。

用户体验改进 

我们的下一个投资重点是用户体验。我们的目标是提供用户界面友好的工作流程,以确保Java开发者在IDE中的互操作性和流畅的Azure管理体验。我们注意到,在我们目前的产品中,仍然存在一些问题,如缺乏用户体验指标,入门体验的使用率低,等等。我们将致力于为开发者带来更好的体验。我们还计划改进指导性的入门体验,以及引入新的升级更新机制,使你在旧的IntelliJ IDE版本中也能享受新的功能。

以应用为中心的云开发体验支持

对于想在Azure上托管自己的Web应用的Java Web开发人员来说,他们不仅需要熟悉IDE或CLI等开发工具,还需要学习Azure云概念,以便成功部署到云上。因此,我们计划进行投资,以实现以应用为中心的体验,减少云概念的学习曲线,简化代码到云的体验,包括与Azure Developer CLI的整合。

此外,我们还计划增加与资源连接器服务(Resource Connector)的无缝集成,这有助于为所有Java Azure开发者提供统一的资源连接管理体验。从长远来看,我们可以让资源连接器服务处理 “云 “方面的服务配置,然后让IDE中的Azure Toolkit处理 “代码 “方面的项目/环境配置。

性能和可靠性优化

除上述领域外,我们会一如既往的提高工具包的稳定性,减少错误率,为用户提供更好的性能和可靠性。

Azure Toolkit for IntelliJ 提升

Azure Functions 部署槽支持

6月份的更新中,我们为Gradle插件上的Azure Functions增加了部署槽(Deployment Slots)支持。Azure Functions部署槽允许你的 Function应用运行不同的实例,称为 “槽”。更多细节请参见Azure Functions部署槽

我们一直有听到Java开发者的反馈,他们希望Azure Toolkit for IntelliJ也能提供这种支持。10月份,我们在最新的版本中进一步增强了IntelliJ IDEA上Azure Functions的这种体验。你可以直接在IDE中创建、选择和交换部署槽。下面是一个简短的演示。

 

反馈与建议

如果您感兴趣,请不要犹豫并尝试使用我们的产品吧! 您的反馈和建议对我们非常重要,将有助于我们产品的未来发展。

Image feedback new

资源

以下链接和资源能帮助您更好地了解 Java on Azure Tooling 的相关信息:

Author

Jialuo Gan
Program Manager

PM at Microsoft, currently focus on Java Azure Tooling Area. Keep moving to explore everything with curiosity!

0 comments

Discussion are closed.