Skip to content

OpenLiberty/liberty-tools-vscode

Repository files navigation

Liberty Tools for Visual Studio Code

Note: Requires Visual Studio Code 1.78.0 or later, and Java 17 or later.

This page provides an overview of Liberty Tools for Visual Studio Code. For minimum requirements information and detailed instructions on how to use Liberty Tools, check the user-guide.

Marketplace Version License

Liberty Tools for Visual Studio Code offers features for developing cloud-native Java applications with Open Liberty and WebSphere Liberty. Iterate fast with Liberty dev mode, code with assistance for MicroProfile & Jakarta EE APIs, and easily edit Liberty configuration files.

liberty dashboard screenshot

Use Liberty Tools to run your Liberty Maven or Liberty Gradle projects through the Liberty dashboard or the VS Code command palette. You can start, stop, or interact with Liberty dev mode on all available Liberty Maven or Liberty Gradle projects in your workspace. Liberty Tools also helps you quickly and easily edit your application and configuration files by providing language support features for MicroProfile, Jakarta EE, and Liberty configuration and Java files.

For minimum requirements information and detailed instructions on how to use Liberty tools, check out the Liberty Tools for Visual Studio Code user guide page.

Features

  • View supported Liberty projects in the Liberty dashboard.
  • Start/Stop dev mode.
  • Start dev mode with custom parameters.
  • Start dev mode in a container.
  • Attach the debugger.
  • Run tests.
  • View test reports.
  • Code with language assistance in the following configuration and application files:
    • server.xml, server.env, bootstrap.properties Liberty configuration files
    • Jakarta EE 9.x APIs in Java files
    • MicroProfile APIs in microprofile-config.properties and Java files

Feature completion in bootstrap.properties files helps you quickly edit your Liberty runtime configuration.

Liberty Config Language Server completion

Hover in server.xml files provides more detailed descriptions.

Liberty Config Language Server hover

Diagnostics in server.env files helps you quickly spot errors in your Liberty runtime configuration.

Liberty Config Language Server diagnostic

Helpful code snippets are provided in Java files for Jakarta EE APIs such as Jakarta RESTful Web Services.

Eclipse LSP4Jakarta completion

Editing assistance for configuration and application files is provided through the following language server projects, which this project consumes. For more information, see the documentation for these projects.

Liberty Tools for Visual Studio Code depends on the Tools for MicroProfile Visual Studio Code extension. This extension provides editing assistance for MicroProfile APIs in Java and microprofile-config.properties files.

Quick start

Projects with the Liberty Maven Plugin or Liberty Gradle Plugin configured will appear in the Liberty Dashboard on the sidebar.

For minimum requirements information and detailed instructions on how to use the Liberty commands, check out the Liberty Tools for Visual Studio Code user guide page.

Commands

The following commands are available when you select a project in the Liberty Dashboard.

Command Description
Start Start dev mode.
Start…​ Start dev mode with custom parameters. Supported parameters can be found in the documentation for the dev goal of the Liberty Maven Plugin and the libertyDev task of the Liberty Gradle Plugin.
Start in a container Start dev mode with Liberty running in a container. The liberty-maven-plugin must be version 3.3-M1 or higher. The liberty-gradle-plugin must be version 3.1-M1 or higher.
Stop Stop dev mode. Liberty must be running in dev mode to use this command.
Run tests Run the unit tests and integration tests that are configured for your project. Liberty must be running in dev mode to use this command.
View integration test report (Maven) View the integration test report file, if it exists at the /target/site/failsafe-report.html default location.
View unit test report (Maven) View the unit test report file, if it exists at the /target/site/surefire-report.html default location.
View test report (Gradle) Open the test report file, if it exists at the build/reports/tests/test/index.html default location. This action command is available only to Gradle projects. Gradle projects have only a single action command for test result reporting.

Requirements

Visual Studio Code 1.78.0 or later, and Java 17 or later.

Liberty Tools for Visual Studio Code will check the xml.java.home VS Code setting or the JAVA_HOME system environment variable to ensure the LemMinX language server uses Java 17 or later. For further information on configuring your Java runtime for language servers, consult this user guide section.

The following extensions are bundled with Liberty Tools for Visual Studio Code during installation and are provided here for additional information.

Contributing

See the DEVELOPING and CONTRIBUTING documents for more details.

Issues

Please report bugs, issues and feature requests by creating a GitHub issue.