News

Java on VS Code Plans: Improve Inner Loop, Security, Remote Development & More

The regular monthly update to Java tooling on Visual Studio Code is light on new features but does provide a peek into future plans, which include improving the fundamental inner loop experience, security, remote development and much more.

As the dev team in charge of the Java Extension Pack and other tooling is halfway through the year, it published a July-to-December 2021 roadmap where much of the planned work is designed to improve the fundamental day-to-day experience in working with Java in VS Code.

Specific items for that inner-loop development experience include:

  • Continual investment on:
    • Better code completion/navigation
    • Package import
    • Compiling
    • Debugging
    • Testing
  • Polishing the experience for handling large-scale and complicated projects, which will help developers working with enterprise-level codebases that often have complex layouts
  • Enhancing performance and reliability

On the security front, the team highlighted the new Workspace Trust feature that gives developers the modal dialog option of "trusting" a folder upon opening it or a file in it. If the developer grants trust, things work as normal. If the developer indicates a lack of trust, further coding must be done in a restricted mode that guards against automatic code execution, as the project's code is not certified as being safe. This lets developers safely browse and edit code without having to worry about triggering malicious code exploits.

Prompt Opening a Folder
[Click on image for larger view.] Prompt Opening a Folder

"For Java projects, we already started to work on supporting those new security features," the team said.

In fact, one of the few new features introduced in the June 2021 update pertains to just that: "When you work in an untrusted workspace, all our Java tools will be in restricted mode and certain capabilities will be disabled. To manage workspace trust, simply open command palette (Ctrl+Shift+P) and run 'Workspaces: Manage Workspace Trust' command."

Another area of focus going forward is remote development, particularly germane as the COVID-19 pandemic has forced a huge work-from-home movement around the globe, including developers.

One crucial component of remote work in VS Code is GitHub Codespaces, which provides a configurable online development environment that developers can use to work entirely in the cloud.

"Visual Studio Code plays a critical role in Codespaces as it provides the essential code editing experience," Microsoft said. "In terms of Java, the team is working on providing the support for Java language extensions in Codespaces so Java developers can find all Java related tools they need." Requesting access for Codespaces and other information is available in the official Codespaces documentation."

Other work will be done to support more Java versions and the Spring framework in containers so developers can leverage those technologies in remote development scenarios. Related to that is another new feature introduced in the June update: Java 16 is enabled in the remote dev container.

Java on VS Code Roadmap
[Click on image for larger view.] Java on VS Code Roadmap (source: Microsoft).

Other highlights of the July-December roadmap include:

  • Build Tools Support: The team plans to add support for Gradle, a popular topic amongst the dev community for a long time. The first Gradle-related work will address task management and Gradle file authoring. The team will also improve the existing Maven tools experience and add new features to support more scenarios such as switching profiles.
  • Testing: Visual Studio Code Java will adopt newly introduced Testing APIs. "This means when Java developers are dealing with tests in Visual Studio Code, they will not only be able to use a user interface with richer display of outputs, but also gain access to more testing metrics such as testing coverage."
  • Debugging – Exploring Virtual Threads: Seeking better performance, the team will explore the possibility of enabling virtual threads powered by the new Project Loom. "Our goal is to increase the developer productivity and further optimize the debugging experience in Visual Studio Code Java."

Java-related resources available for VS Coders include Java in Visual Studio Code documentation and Getting Started with Java in VS Code tutorials.

About the Author

David Ramel is an editor and writer at Converge 360.

comments powered by Disqus

Featured

  • Compare New GitHub Copilot Free Plan for Visual Studio/VS Code to Paid Plans

    The free plan restricts the number of completions, chat requests and access to AI models, being suitable for occasional users and small projects.

  • Diving Deep into .NET MAUI

    Ever since someone figured out that fiddling bits results in source code, developers have sought one codebase for all types of apps on all platforms, with Microsoft's latest attempt to further that effort being .NET MAUI.

  • Copilot AI Boosts Abound in New VS Code v1.96

    Microsoft improved on its new "Copilot Edit" functionality in the latest release of Visual Studio Code, v1.96, its open-source based code editor that has become the most popular in the world according to many surveys.

  • AdaBoost Regression Using C#

    Dr. James McCaffrey from Microsoft Research presents a complete end-to-end demonstration of the AdaBoost.R2 algorithm for regression problems (where the goal is to predict a single numeric value). The implementation follows the original source research paper closely, so you can use it as a guide for customization for specific scenarios.

  • Versioning and Documenting ASP.NET Core Services

    Building an API with ASP.NET Core is only half the job. If your API is going to live more than one release cycle, you're going to need to version it. If you have other people building clients for it, you're going to need to document it.

Subscribe on YouTube