Skip to content

jdtls plugin: .java extension not registered with LSP router on Windows native installation #69

Description

@bib-toread

Environment:

  • Claude Code 2.1.123 (native binary install via npm/nvm4w on Windows)
  • tweakcc fix-lsp-support patch applied successfully
  • JDK 21 (Microsoft OpenJDK 21.0.10) as JAVA_HOME, jdtls Python launcher in PATH
  • Other LSP plugins from same marketplace (vtsls, vue-volar) get routed correctly
    Symptom:
  • LSP findReferences/documentSymbol/workspaceSymbol on .java file returns:
    "No LSP server available for file type: .java"
  • vtsls (.js) returns: "Executable not found in $PATH: 'vtsls'" — i.e. router DOES know the extension
  • vue-volar (.vue) returns: "Executable not found in $PATH: 'sh'" — also routed
    Diagnosed:
  • /c/Users/lzb/.claude/plugins/cache/claude-code-lsps/jdtls/0.1.0/.lsp.json contains
    correct extensionToLanguage mapping {".java": "java"}
  • Manual jdtls invocation works (Logback/OSGi loaded, JDK 21 confirmed)
  • Reinstall + /reload-plugins reports "3 plugin LSP servers" but .java still unrouted
    Hypothesis:
  • The lspServers key "java" may collide with internal language handling
  • Or the extension registration silently fails for jdtls specifically

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions