# Install jdtls with Homebrew, apk, scoop

Java language specific implementation of the Language Server Protocol. Version 1.60.0 via Homebrew; verified 2026-06-27.

## Install

```sh
sudo av install brew:jdtls
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install jdtls
```

  Evidence: local Homebrew formula metadata

### Linux

- apk (92%):

```sh
sudo apk add jdtls
```

  Evidence: Alpine Linux edge package indexes: jdtls from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz

### Windows

- Scoop (92%):

```sh
scoop install main/jdtls
```

  Evidence: Scoop official bucket manifest trees: bucket/jdtls.json from https://api.github.com/repos/ScoopInstaller/Main/git/trees/master?recursive=1

## Package facts

- **Package key:** brew:jdtls
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/jdtls>
- **Version:** 1.60.0
- **Source summary:** Java language specific implementation of the Language Server Protocol
- **Homepage:** <https://github.com/eclipse-jdtls/eclipse.jdt.ls>
- **Repository:** <https://github.com/eclipse-jdtls/eclipse.jdt.ls>
- **Upstream docs:** <https://github.com/eclipse-jdtls/eclipse.jdt.ls/blob/master/README.md>
- **License:** EPL-2.0
- **Source archive:** <https://www.eclipse.org/downloads/download.php?file=/jdtls/milestones/1.60.0/jdt-language-server-1.60.0-202606262232.tar.gz>
- **Last updated:** 2026-06-27T07:47:47Z
- **Generated:** 2026-07-08T18:08:21+00:00

## Executables

- jdtls (cli)
- jdtls (alias)

## Dependencies

- openjdk
- python@3.14

## Install behavior

- Post-install hook: not defined
- Bottle: available on all

## Freshness

- Page generated: 2026-07-08
- Package-manager version: 1.60.0
- Package-manager updated: 2026-06-27
- Local data: ok
- Upstream repository: https://github.com/eclipse-jdtls/eclipse.jdt.ls
- info: No cached GitHub release or tag data was available.
## Project history and usage

Eclipse JDT Language Server is the Eclipse Java tooling stack adapted to the Language Server Protocol. Its README describes a Java-specific language server based on Eclipse LSP4J, Eclipse JDT, M2Eclipse, and Buildship.

### Project history

The Eclipse proposal for JDT Language Server was filed on August 22, 2016. It framed LSP as a way to make Java tooling work across editors with otherwise incompatible extension systems, and it identified an earlier GitHub project, gorkem/java-language-server, as the initial contribution.

The Eclipse project page records the project under Eclipse JDT and lists releases beginning with 1.0 on April 7, 2021. The GitHub repository and CHANGELOG then show regular feature, bug-fix, dependency, and Java-version support work across the 1.x series.

### Adoption history

JDT LS gained adoption by letting editors consume Eclipse-grade Java services through LSP instead of embedding the Eclipse IDE. The proposal named Codenvy, Microsoft, IBM, and Red Hat as interested parties, and the README says the server can be used with any editor that supports the protocol.

Package managers made that workflow easier for terminal and editor users: the batch input records Homebrew, Alpine, and Scoop packages, and Homebrew exposes a jdtls formula for macOS and Linux installs.

### How it is used

The language server is used by Java-aware editors to provide project import, diagnostics, completion, Javadoc hovers, code actions, navigation, formatting, code lenses, hierarchy views, and Maven or Gradle project support.

### Why package nerds care

JDT LS is important in package-manager culture because it turns a large IDE subsystem into an installable background service. A single jdtls package can wire Eclipse JDT into Neovim, Emacs, VS Code-derived clients, and other LSP front ends without packaging a whole Java IDE.

### Timeline

- 2016: Eclipse proposal created for JDT Language Server.
- 2016: Proposal cited gorkem/java-language-server as the initial contribution.
- 2021: Eclipse project page records release 1.0 on April 7.
- 2025: Eclipse project page records frequent 1.x releases through the year.
- 2026: CHANGELOG records 1.60.0 with Javadoc quick-fix work and dependency maintenance.

### Related projects

- Related projects include Eclipse LSP4J for Java LSP bindings, Eclipse JDT for Java language intelligence, M2Eclipse for Maven support, Buildship for Gradle support, and the Eclipse Che and Orion projects named in the original proposal.

### Sources

- <https://formulae.brew.sh/formula/jdtls>
- <https://github.com/eclipse-jdtls/eclipse.jdt.ls>
- <https://github.com/eclipse-jdtls/eclipse.jdt.ls/blob/master/CHANGELOG.md>
- <https://github.com/eclipse-jdtls/eclipse.jdt.ls/blob/master/README.md>
- <https://projects.eclipse.org/projects/eclipse.jdt.ls>
- <https://projects.eclipse.org/proposals/jdt-language-server>


## Security Notes

broad file, network, media, or database tool signal.

- **Geiger risk:** blue / medium
- broad file, network, media, or database tool signal

## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** jdtls
- **Version Scheme:** 1
- **Revision:** 0
- **Bottle Stable Root URL:** <https://ghcr.io/v2/homebrew/core>
- **Deprecated:** no
- **Disabled:** no
- **Keg Only:** no
- **URL Keys:** stable

## Other Package-Manager Records

- apk - jdtls - 1.58.0-r0: normalized package name match | Alpine Linux edge package indexes: jdtls from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | Eclipse Java language server | https://github.com/eclipse/eclipse.jdt.ls
- Scoop - main/jdtls: normalized package name match | Scoop official bucket manifest trees: bucket/jdtls.json from https://api.github.com/repos/ScoopInstaller/Main/git/trees/master?recursive=1


## Related links

- [Source-control packages](https://www.automicvault.com/pkg/source-control-tools/) - Belongs to a source-control command family.
- [Secret-risk packages](https://www.automicvault.com/pkg/secret-risk-packages/) - Has protected-tool coverage, approval-gate, or non-low Geiger security signals.
- [Terminal utility packages](https://www.automicvault.com/pkg/terminal-utilities/) - Matched terminal and command-line workflow metadata.
- [Text processing packages](https://www.automicvault.com/pkg/text-processing-tools/) - Matched text, document, or structured-data processing metadata.
- [openjdk](https://www.automicvault.com/pkg/brew/openjdk/) - Runtime dependency declared by Homebrew.
- [python@3.14](https://www.automicvault.com/pkg/brew/python-3-14/) - Runtime dependency declared by Homebrew.
- [ansible-language-server](https://www.automicvault.com/pkg/brew/ansible-language-server/) - Shares av.db curated category or tags: cli, developer-tools, language-server, lsp.
- [bash-language-server](https://www.automicvault.com/pkg/brew/bash-language-server/) - Shares av.db curated category or tags: cli, developer-tools, language-server, lsp.
- [clojure-lsp](https://www.automicvault.com/pkg/brew/clojure-lsp/) - Shares av.db curated category or tags: cli, developer-tools, language-server, lsp.
- [codebook-lsp](https://www.automicvault.com/pkg/brew/codebook-lsp/) - Shares av.db curated category or tags: cli, developer-tools, language-server, lsp.
- [crystalline](https://www.automicvault.com/pkg/brew/crystalline/) - Shares av.db curated category or tags: cli, developer-tools, language-server, lsp.
- [ctags-lsp](https://www.automicvault.com/pkg/brew/ctags-lsp/) - Shares av.db curated category or tags: cli, developer-tools, language-server, lsp.
- [dhall-lsp-server](https://www.automicvault.com/pkg/brew/dhall-lsp-server/) - Shares av.db curated category or tags: cli, developer-tools, language-server, lsp.
- [docker-compose-langserver](https://www.automicvault.com/pkg/brew/docker-compose-langserver/) - Shares av.db curated category or tags: cli, developer-tools, language-server, lsp.
- [python-lsp-server](https://www.automicvault.com/pkg/brew/python-lsp-server/) - Both packages touch the same language runtime or ecosystem. Shared terms: cli, developer, developer-tools, language, language-server.
- [kotlin-language-server](https://www.automicvault.com/pkg/brew/kotlin-language-server/) - Local metadata places this package in an adjacent workflow. Shared terms: cli, developer, developer-tools, language, language-server.

## Combined YAML source

View the package source record on GitHub. [combined/jdtls.yml](https://github.com/automic-vault/db/blob/main/combined/jdtls.yml)


## Sources

- Nucleus package database
- Geiger risk classifier
- package-page enrichment
- curated package history
- package version freshness
- av.db category and tag curation
- package relationship graph
- external package-manager database matches
- cross-ecosystem install command graph
