Nick Zhu form Senior Program Manager, Developer Division at Microsoft

今天,我们很高兴与大家宣布:Language Server for Java 的1.0版本在 Visual Studio Code上正式发布了!这是 Java 在 Visual Studio Code上的一个重要里程碑,也是微软,红帽以及整个社区之间多年合作的结果。在这里我们要感谢所有提出过意见或者做过贡献的用户,谢谢!

发布亮点

当我们开始发布第一个版本时,我们的目标是在 Visual Studio Code 上提供最好的 Java 开发体验。此后,我们一直保持每月1-2次的发布周期,经历了多次迭代。在这个 1.0 版本中,我们想重点介绍以下新特色

Java 17 支持

我们会始终尽全力去支持 Java 语言提供的最新技术。在我们的 1.0 版本中,我们的 Java 插件现在正式提供对 Java 17 的支持

性能改进

性能提升也是本次发布的另一个亮点。由于 LSP 规范中的新功能,我们能够推迟某些计算,从而在许多场景中为我们带来更好的性能。此外,更好的默认 JVM 选项可以用于改善更大更复杂项目的用户体验。我们还在很多特定场景做了细微的改进,以提高语言服务器的响应能力。

类继承体系

现在用户可以方便地在 Visual Studio Code 中轻松访问类继承体系!这是我们最近推出的一项功能,并且一直是 Java 社区中最热门的需求之一。

库源代码定位

目前,我们允许用户快速定位某个库的源代码,有时这非常有用。现在,我们已将其支持扩展到普通项目(即没有使用构建工具的项目)。只要库来自 Maven Central repo,我们就可以解析其来源。还支持更高级的配置。

更多代码相关操作

用户体验是我们继续改进的另一个领域。我们在新版本中提供了更多的代码操作来优化用户开发体验

Gradle Kotlin (.kts) 支持

尽管我们已经使用 Groovy 脚本支持 Gradle 项目,但我们不断听到社区需要更好的 Kotlin 支持,所以在新版本中我们对Kotlin提供了一些基本的支持。我们希望可以继续扩展这一领域,并在未来为 Kotlin 提供出色的体验

Visual Studio Code 的 Java 之旅

Language Server for JavaJava 扩展包的基础,并提供了 Java 代码编辑、完成、重构、导航等核心体验。在过去的几年里,微软和红帽一直密切合作,不断为这个语言服务器添加新功能。我们还一直在微调语言服务器的性能,并通过修复Bug和添加新特性来提高稳定性。

除了主要的 Java 语言支持外,我们还基于语言服务器构建了各种 Java 扩展,并扩展了 Visual Studio Code 上的 Java 开发体验,包括项目管理、对 Maven/Gradle 的构建工具支持、更好的测试支持等。这些努力背后的目标是在 Visual Studio Code 上提供最佳的 Java 开发体验。

展望未来

在未来,我们为 Visual Studio Code 上的 Java 语言支持有非常多的计划。其中一些包括:

  • 让用户更容易配置编译器的错误/警告和代码格式
  • 更智能以及有用的代码自动完成建议
  • 继续提供更多的代码相关操作并最终达到与其它Java IDE 相同的功能
  • 进一步提升语言服务器的整体性能和启动时间
  • 在插件中直接嵌入 Java Runtime以改善整体上手体验

Language Server for Java 的 1.0 版本是 Java 在Visual Studio Code上的重要里程碑,我们还有很长的路要走。微软和红帽将继续在Java 语言支持方面进行合作和投入,我们致力于提供出色的 Java 开发体验。

与往常一样,您的反馈对我们的产品改进至关重要,因此请不要犹豫尝试我们的产品。您可以点击此链接开始使用 Visual Studio Code 学习 Java,也可以通过此链接获得最新的Java插件包。

Language Server for Java™ 1.0 在VS Code上正式发布!的更多相关文章

  1. .NET Core & ASP.NET Core 1.0在Redhat峰会上正式发布

    众所周知,Red Hat和微软正在努力使.NET Core成为Red Hat企业版Linux (RHEL)系统上的一流开发平台选项.这个团队已经一起工作好几个月了,RHEL对.NET有许多需求.今天在 ...

  2. Visual Studio Code 上java开发环境搭建

    在把一些开源的SDK中java代码转成C#代码时经常需要写点java代码来实验下功能,装个Eclipse或IDEAs吧,好像也不太值当,所以用vs code搭个环境偶尔来实验下.以下: 1.下载并装好 ...

  3. Java Web项目在Mac系统上启动时提示nodename nor servname provided的解决办法

    今天在Mac系统上启动Java Web项目的时候,提示了Java.net.UnknownHostException: yangxiaomindeMacBook-Pro.local nodename n ...

  4. 【java异常】org.springframework.web.util.NestedServletException: Handler processing failed;Can't connect to X11 window server using 'localhost:10.0' as the value of th

    tomcat工程中创建二维码失败.抛出异常Can't connect to X11 window server using 'localhost:10.0' as the value of th 因为 ...

  5. VS Code拓展--Language Support for Java(TM) by Red Hat(1.3.0)

    Language Support for Java(TM) by Red Hat(1.3.0) 注意:版本问题,可能会有部分出入 功能目录 设置 java.home 作用: 指定用于启动 Java 语 ...

  6. vscode + gradle 创建 java 项目 - java language server无法启动

    1.在系统上安装一个版本的gradle,用`gradle init --type java-application`创建一个默认的java项目,假设项目目录是hellojava 2.vscode写ja ...

  7. Windows Server 2003服务器.net4.0+IIS6.0的服务器,IE11浏览器访问的不兼容性

    工作中发生了一件诡异的事情: 程序在Win7+.NET4.0+IIS7.5的服务器部署,IE8和IE11请求时,响应的样式都正常. 但是在美的同事反映说,Windows Server 2003服务器. ...

  8. WebSphere Application Server V8.5.5.0

    Downloadable files Abstract IBM WebSphere Application Server Version 8.5.5 Refresh Pack for all plat ...

  9. Can't connect to X11 window server using 'localhost:10.0' as the value of the DISPLAY variable.

    刚刚在一台Linux服务器上安装了jdk和Tomcat,然后部署了一个web项目,在项目中有个添加图片的功能,保存图片时报错 org.springframework.web.util.NestedSe ...

随机推荐

  1. 一生挚友redo log、binlog《死磕MySQL系列 二》

    系列文章 原来一条select语句在MySQL是这样执行的<死磕MySQL系列 一> 一生挚友redo log.binlog<死磕MySQL系列 二> 前言 咔咔闲谈 上期根据 ...

  2. javascript 字符串反转 strip_tags 字符串常用的自定义函数,加载css etc.

    字符串反转 String.prototype.reverse = function() { var a = this.split(''); for (var i = 0, j = a.length-1 ...

  3. HTML 网页开发、CSS 基础语法——八.HTML基本语法

    表格制作 1.表格基础 创建一个简单的表格至少有三个标签组成,分别是<table>,<tr>,<td>标签. table:表格,定义的是整个的表格大结构. tr:t ...

  4. P7405-[JOI 2021 Final]雪玉【二分】

    正题 题目链接:https://www.luogu.com.cn/problem/P7405 题目大意 \(n\)个点在坐标轴上,\(q\)次每次所有点向一个方向移动若干步,每个点的权值是它第一次覆盖 ...

  5. 深入浅出WPF-09.Command(命令)

    命令 1)命令系统的基本元素 命令(Command),WPF的命令实际上就是实现了ICommand接口的类,平时使用最多的是RoutedCommand类 命令源(Command Source),即命令 ...

  6. PyCharm插件开发实践-PyGetterAndSetter

    背景需求 在面向对象的设计中,典型如Java语言,为了控制对象属性的修改入口,我们常用的做法是把属性设置为private,然后通过getter和setter方法访问.修改该属性. 但是在Pthon语言 ...

  7. virtualbox nat 模式下连接虚拟机redis

    主要是使用端口转发的方法 如果你能使用xshell等工具连接这个方法基本一样  接着修改redis.conf文件的69 行(我使用的是5.0)将这里的地址修改为虚拟机的 ip 地址,这里我使用的是备份 ...

  8. nsq topic

    与Topic相关的代码主要位于nsqd/topic.go中. 上一篇文字我们讲解了下nsq的启动流程.对nsq的整体框架有了一个大概的了解.本篇文章就是由大到小.对于topic这一部分进行详尽的讲解. ...

  9. 题解 SP6779 【GSS7 - Can you answer these queries VII】

    题目传送门 题目大意 给出一个\(n\)个点的树,每个点有权值.有\(m\)次操作,每次要么查询一条链上的最大子段和,要么把一条链的权值都修改为一个常数. \(n,m\le 10^5\) 思路 如果是 ...

  10. 洛谷4172 WC2006水管局长(LCT维护最小生成树)

    这个题和魔法森林感觉有很相近的地方啊 同样也是维护一个类似最大边权最小的生成树 但是不同的是,这个题是有\(cut\)和询问,两种操作.... 这可如何是好啊? 我们不妨倒着来考虑,假设所有要\(cu ...