Before starting development, ensure you have:
- Java 20 or higher installed and configured in your
PATH - Maven 3.6 or higher for building the language server
- Node.js and npm for building and packaging the client
- Visual Studio Code and the Language Support for Java(TM) by Red Hat extension installed and enabled
To get started, clone the repository and install the client dependencies:
git clone https://github.com/liquid-java/vscode-liquidjava.git
cd vscode-liquidjava
cd client
npm installTo build the language server, package the extension, and install it in your local VS Code instance, you can run the provided script from the repository root:
./install.shUse ./install.sh --skip-server to package and install the extension without rebuilding the language server.
To create and push a git tag that will trigger the GitHub Actions workflow that automatically publishes the extension in both the VS Code Marketplace and the Open VSX Registry, run the release script from the repository root:
./release.shBy default, the script bumps the patch version in client/package.json. To release a manually bumped version instead, pass the version explicitly; it must match the version in client/package.json:
./release.sh <new-version>To run the extension in development mode, follow these steps:
- Go to Run > Run Extension (or press F5)
- A new VS Code instance will open with the extension installed, which will automatically run the language server in the background and connect to it
- Open a Java project using LiquidJava
To run the language server manually, follow these steps:
- Run the server in port
50000(default) - In the client, set the
DEBUGconstant in client/src/extension.ts totrue - Run the client which will connect to the server in port
50000
/server- Implements the language server in Java using LSP4J/client- Implements the VS Code extension in TypeScript that connects to the language server via LSP