aboutsummaryrefslogtreecommitdiffstats
path: root/lua/mason-registry/groovy-language-server/init.lua
blob: d6dc84d23d5394eb863fb1f1fb06707f635f360e (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
local Pkg = require "mason.core.package"
local std = require "mason.core.managers.std"
local git = require "mason.core.managers.git"

return Pkg.new {
    name = "groovy-language-server",
    desc = [[A language server for Groovy]],
    homepage = "https://github.com/GroovyLanguageServer/groovy-language-server",
    languages = { Pkg.Lang.Groovy },
    categories = { Pkg.Cat.LSP },
    ---@async
    ---@param ctx InstallContext
    install = function(ctx)
        std.ensure_executable "javac"
        git.clone({ "https://github.com/GroovyLanguageServer/groovy-language-server" }).with_receipt()
        ctx:promote_cwd()
        ctx.spawn.gradlew {
            "build",
            with_paths = { ctx.cwd:get() },
        }
    end,
}