News

Can't Wait for JNBridge's Java.VS? Program Java in VS Code Now with Red Hat Tool

JNBridge made big news recently by announcing the upcoming Java.VS, which will allow Java programming within Visual Studio. But for those who can't wait, there's already a free tool available from open source champion Red Hat for the IDE's little cousin, the Visual Studio Code editor.

As we noted earlier, Java support in Visual Studio is skimpy, leading many developers to turn to the "Language Support for Java by Red Hat" extension in the Visual Studio Code marketplace.

Although it's still listed as a preview, Red Hat yesterday noted the tool was first announced a year ago and has reached the 1 million download threshold.

"During this past year, we made 10 releases, added various features, fixed many bugs but more importantly, we have constantly grown our user base and finally reached and passed a million downloads on the Visual Studio Marketplace," Gorkem Ercan said in yesterday's post.

When announcing the extension in September of last year, Gorkem said the initial release sported a modest feature set, but the functionality for to "make VS Code more fun to use for Java developers" included:

  • Maven based project support
  • As you type compilation error reporting
  • Code completion
  • Javadoc hovers
  • Code outline
  • Code navigation
  • Code lens for references
  • Highlights
  • Code formatting

The extension is made possible by the Eclipse JDT Language Server implementation of the Language Server Protocol.

The Language Server Protocol, actually developed by Microsoft, "is used between a tool (the client) and a language smartness provider (the server) to integrate features like auto complete, goto definition, find all references and alike into the tool."

According to a Microsoft post last year about the protocol, "Visual Studio Code provides rich language support for many programming languages. Support for a particular programming language is powered by a language server that has a deep understanding of that language. VS Code communicates with these servers to enable rich editing capabilities like 'Errors & Warnings', 'Refactor', and 'Go To Definition'."

Language Server Protocol
[Click on image for larger view.] Language Server Protocol (source: Microsoft).

The Eclipse JDT Language Server project, meanwhile, "is a Java language specific implementation of the Language Server Protocol and can be used with any editor that supports the protocol, to offer good support for the Java Language."

Including the features listed above, that "good support" also includes limited support for the Gradle build tool, though Android projects aren't supported.

Ercan said more functionality is planned for the tool, such as Java 9 support, more refactoring and "even a debugger from our friends." The identity of those "friends" wasn't provided.

In the meantime, Ercan thanked the Red Hat team that worked on the project.

"Fred Bricon, Snjezana Peco and I, as the core team have worked on the Java Language Server and the Visual Studio Code extension, are especially proud not only because of our growing number of users but also the growing number of contributors to the project and the adoption of the Java Language Server by other editors such as Atom," Ercan said.

The Visual Studio Code Marketplace extension has been installed 1,073,414 times as of today, and garnered a 4.3 rating (0-5 scale) from 40 reviewers. The project's GitHub site lists 12 contributors, 287 stars and 44 forks.

About the Author

David Ramel is an editor and writer for Converge360.

comments powered by Disqus

Featured

  • See Prompts Microsoft Engineers Use for Bleeding-Edge Multimodal RAG AI Research

    Vision-centric queries show how front-line experts are prompting LLMs these days.

  • AI Explains Expressions in Update to Java on VS Code

    "The Spring Tools now show code lenses above these expressions that allow you to quickly let GitHub Copilot explain those statements for you."

  • Microsoft Eases Integration with Semantic Kernel AI SDK

    The basic idea is to provide unified API abstractions, especially for idiomatic C# code, to help platform developers and others work with any provider with standard implementations for caching, telemetry, tool calling and other common tasks.

  • Final .NET 9 Preview Ships with Go-Live License

    Visual Studio developers can now download the SDK for .NET 9 Release Candidate 2 with a go-live license, meaning devs get Microsoft support for production applications even before the framework reaches general availability next month.

Subscribe on YouTube