Skip to content

A language server for Groovy — designed for Moonshine IDE, but may be useful in other environments

License

Notifications You must be signed in to change notification settings

GroovyLanguageServer/groovy-language-server

Repository files navigation

Groovy Language Server

A language server for Groovy.

The following language server protocol requests are currently supported:

  • completion
  • definition
  • documentSymbol
  • hover
  • references
  • rename
  • signatureHelp
  • symbol
  • typeDefinition

The following configuration options are supported:

  • groovy.java.home (string - sets a custom JDK path)
  • groovy.classpath (string[] - sets a custom classpath to include .jar files)

Build

To build from the command line, run the following command:

./gradlew build

This will create build/libs/groovy-language-server-all.jar.

Run

To run the language server, use the following command:

java -jar groovy-language-server-all.jar

Language server protocol messages are passed using standard I/O.

Editors and IDEs

A sample language extension for Visual Studio Code is available in the vscode-extension directory. There are no plans to release this extension to the VSCode Marketplace at this time.

Instructions for setting up the language server in Sublime Text is available in the sublime-text directory.

Moonshine IDE natively provides a Grails project type that automatically configures the language server.