eclipse.jdt.ls icon indicating copy to clipboard operation
eclipse.jdt.ls copied to clipboard

Exception: Cannot find equinox launcher

Open hungrybirder opened this issue 1 year ago • 3 comments

macOS neovim v0.10.3 Install jdtls from mason, jdtls version = v0.14.3

> cd /Users/liyong/.local/share/nvim/mason/bin
> ./jdtls
Traceback (most recent call last):
  File "/Users/liyong/.local/share/nvim/mason/packages/jdtls/bin/jdtls", line 17, in <module>
    jdtls.main(sys.argv[1:])
  File "/Users/liyong/.local/share/nvim/mason/packages/jdtls/bin/jdtls.py", line 91, in main
    jar_path = find_equinox_launcher(jdtls_base_path)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/liyong/.local/share/nvim/mason/packages/jdtls/bin/jdtls.py", line 56, in find_equinox_launcher
    raise Exception("Cannot find equinox launcher")
Exception: Cannot find equinox launcher

And I changed jdtls.py L52 to

    	launchers = plugins_dir.glob('org.eclipse.equinox.launcher.jar')

then jdtls started, but it didn't work. log

[START][2024-12-25 14:59:22] LSP logging initiated
[ERROR][2024-12-25 14:59:22] .../vim/lsp/rpc.lua:770	"rpc"	"/Users/liyong/.local/share/nvim/mason/bin/jdtls"	"stderr"	"WARNING: Using incubator modules: jdk.incubator.vector, jdk.incubator.foreign\n"
[ERROR][2024-12-25 14:59:24] .../vim/lsp/rpc.lua:770	"rpc"	"/Users/liyong/.local/share/nvim/mason/bin/jdtls"	"stderr"	"Dec 25, 2024 2:59:24 PM org.apache.aries.spifly.BaseActivator log\nINFO: Registered provider ch.qos.logback.classic.servlet.LogbackServletContainerInitializer of service jakarta.servlet.ServletContainerInitializer in bundle ch.qos.logback.classic\n"
[ERROR][2024-12-25 14:59:24] .../vim/lsp/rpc.lua:770	"rpc"	"/Users/liyong/.local/share/nvim/mason/bin/jdtls"	"stderr"	"Dec 25, 2024 2:59:24 PM org.apache.aries.spifly.BaseActivator log\nINFO: Registered provider ch.qos.logback.classic.spi.LogbackServiceProvider of service org.slf4j.spi.SLF4JServiceProvider in bundle ch.qos.logback.classic\n"
[ERROR][2024-12-25 14:59:26] ...lsp/handlers.lua:623	"Dec 25, 2024, 2:59:23 PM Bundle reference:file:org.eclipse.equinox.launcher_1.6.900.v20240613-2009.jar not found.\nnull"
[ERROR][2024-12-25 14:59:27] .../vim/lsp/rpc.lua:770	"rpc"	"/Users/liyong/.local/share/nvim/mason/bin/jdtls"	"stderr"	"WARNING: Using incubator modules: jdk.incubator.vector, jdk.incubator.foreign\n"
[ERROR][2024-12-25 14:59:27] ...lsp/handlers.lua:623	"Dec 25, 2024, 2:59:27 PM Failed to load extension bundles \nLoad bundle list\norg.eclipse.core.runtime.CoreException: Load bundle list\n\tat org.eclipse.jdt.ls.core.internal.handlers.BundleUtils.loadBundles(BundleUtils.java:173)\n\tat org.eclipse.jdt.ls.core.internal.handlers.InitHandler.handleInitializationOptions(InitHandler.java:113)\n\tat org.eclipse.jdt.ls.core.internal.handlers.BaseInitHandler.initialize(BaseInitHandler.java:68)\n\tat org.eclipse.jdt.ls.core.internal.handlers.JDTLanguageServer.initialize(JDTLanguageServer.java:284)\n\tat java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\n\tat java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)\n\tat java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\n\tat java.base/java.lang.reflect.Method.invoke(Method.java:568)\n\tat org.eclipse.lsp4j.jsonrpc.services.GenericEndpoint.lambda$recursiveFindRpcMethods$0(GenericEndpoint.java:65)\n\tat org.eclipse.lsp4j.jsonrpc.services.GenericEndpoint.request(GenericEndpoint.java:128)\n\tat org.eclipse.lsp4j.jsonrpc.RemoteEndpoint.handleRequest(RemoteEndpoint.java:271)\n\tat org.eclipse.lsp4j.jsonrpc.RemoteEndpoint.consume(RemoteEndpoint.java:201)\n\tat org.eclipse.jdt.ls.core.internal.ParentProcessWatcher.lambda$1(ParentProcessWatcher.java:144)\n\tat org.eclipse.lsp4j.jsonrpc.json.StreamMessageProducer.handleMessage(StreamMessageProducer.java:185)\n\tat org.eclipse.lsp4j.jsonrpc.json.StreamMessageProducer.listen(StreamMessageProducer.java:97)\n\tat org.eclipse.lsp4j.jsonrpc.json.ConcurrentMessageProcessor.run(ConcurrentMessageProcessor.java:114)\n\tat java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)\n\tat java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)\n\tat java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)\n\tat java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)\n\tat java.base/java.lang.Thread.run(Thread.java:833)\nContains: Failed to get bundleInfo for bundle from /Users/liyong/.local/share/nvim/mason/packages/java-test/extension/server/com.microsoft.java.test.runner-jar-with-dependencies.jar\n"
[ERROR][2024-12-25 14:59:28] .../vim/lsp/rpc.lua:770	"rpc"	"/Users/liyong/.local/share/nvim/mason/bin/jdtls"	"stderr"	"Dec 25, 2024 2:59:28 PM org.apache.aries.spifly.BaseActivator log\nINFO: Registered provider ch.qos.logback.classic.servlet.LogbackServletContainerInitializer of service jakarta.servlet.ServletContainerInitializer in bundle ch.qos.logback.classic\n"
[ERROR][2024-12-25 14:59:28] .../vim/lsp/rpc.lua:770	"rpc"	"/Users/liyong/.local/share/nvim/mason/bin/jdtls"	"stderr"	"Dec 25, 2024 2:59:28 PM org.apache.aries.spifly.BaseActivator log\nINFO: Registered provider ch.qos.logback.classic.spi.LogbackServiceProvider of service org.slf4j.spi.SLF4JServiceProvider in bundle ch.qos.logback.classic\n"
[WARN][2024-12-25 14:59:29] ...lsp/handlers.lua:135	"The language server jdtls triggers a registerCapability handler for workspace/didChangeWorkspaceFolders despite dynamicRegistration set to false. Report upstream, this warning is harmless"
[ERROR][2024-12-25 14:59:30] ...lsp/handlers.lua:623	"Dec 25, 2024, 2:59:30 PM Command _java.reloadBundles.command not supported on client"
[ERROR][2024-12-25 14:59:30] .../vim/lsp/rpc.lua:770	"rpc"	"/Users/liyong/.local/share/nvim/mason/bin/jdtls"	"stderr"	"Dec 25, 2024 2:59:30 PM com.microsoft.java.debug.plugin.internal.JavaDebuggerServerPlugin start\nINFO: Starting com.microsoft.java.debug.plugin\n"
[ERROR][2024-12-25 14:59:31] ...lsp/handlers.lua:623	"Dec 25, 2024, 2:59:28 PM Bundle reference:file:org.eclipse.equinox.launcher_1.6.900.v20240613-2009.jar not found.\nnull"
[ERROR][2024-12-25 14:59:33] ...lsp/handlers.lua:623	"Dec 25, 2024, 2:59:33 PM Expected scheme-specific part at index 5: file:\nExpected scheme-specific part at index 5: file:\njava.net.URISyntaxException: Expected scheme-specific part at index 5: file:\n\tat java.base/java.net.URI$Parser.fail(URI.java:2974)\n\tat java.base/java.net.URI$Parser.failExpecting(URI.java:2980)\n\tat java.base/java.net.URI$Parser.parse(URI.java:3180)\n\tat java.base/java.net.URI.<init>(URI.java:781)\n\tat org.eclipse.jdt.ls.core.internal.ResourceUtils.canonicalFilePathFromURI(ResourceUtils.java:226)\n\tat org.eclipse.jdt.ls.core.internal.handlers.BaseInitHandler.handleInitializationOptions(BaseInitHandler.java:105)\n\tat org.eclipse.jdt.ls.core.internal.handlers.InitHandler.handleInitializationOptions(InitHandler.java:109)\n\tat org.eclipse.jdt.ls.core.internal.handlers.BaseInitHandler.initialize(BaseInitHandler.java:68)\n\tat org.eclipse.jdt.ls.core.internal.handlers.JDTLanguageServer.initialize(JDTLanguageServer.java:284)\n\tat java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\n\tat java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)\n\tat java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\n\tat java.base/java.lang.reflect.Method.invoke(Method.java:568)\n\tat org.eclipse.lsp4j.jsonrpc.services.GenericEndpoint.lambda$recursiveFindRpcMethods$0(GenericEndpoint.java:65)\n\tat org.eclipse.lsp4j.jsonrpc.services.GenericEndpoint.request(GenericEndpoint.java:128)\n\tat org.eclipse.lsp4j.jsonrpc.RemoteEndpoint.handleRequest(RemoteEndpoint.java:271)\n\tat org.eclipse.lsp4j.jsonrpc.RemoteEndpoint.consume(RemoteEndpoint.java:201)\n\tat org.eclipse.jdt.ls.core.internal.ParentProcessWatcher.lambda$1(ParentProcessWatcher.java:144)\n\tat org.eclipse.lsp4j.jsonrpc.json.StreamMessageProducer.handleMessage(StreamMessageProducer.java:185)\n\tat org.eclipse.lsp4j.jsonrpc.json.StreamMessageProducer.listen(StreamMessageProducer.java:97)\n\tat org.eclipse.lsp4j.jsonrpc.json.ConcurrentMessageProcessor.run(ConcurrentMessageProcessor.java:114)\n\tat java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)\n\tat java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)\n\tat java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)\n\tat java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)\n\tat java.base/java.lang.Thread.run(Thread.java:833)\n"
[ERROR][2024-12-25 14:59:33] .../vim/lsp/rpc.lua:770	"rpc"	"/Users/liyong/.local/share/nvim/mason/bin/jdtls"	"stderr"	"Dec 25, 2024 2:59:33 PM org.eclipse.lsp4j.jsonrpc.RemoteEndpoint fallbackResponseError\nSEVERE: Internal error: URI has an authority component\njava.lang.IllegalArgumentException: URI has an authority component\n\tat java.base/sun.nio.fs.UnixUriUtils.fromUri(UnixUriUtils.java:54)\n\tat java.base/sun.nio.fs.UnixFileSystemProvider.getPath(UnixFileSystemProvider.java:102)\n\tat java.base/java.nio.file.Path.of(Path.java:203)\n\tat java.base/java.nio.file.Paths.get(Paths.java:98)\n\tat org.eclipse.jdt.ls.core.internal.ResourceUtils.canonicalFilePathFromURI(ResourceUtils.java:230)\n\tat org.eclipse.jdt.ls.core.internal.handlers.BaseInitHandler.handleInitializationOptions(BaseInitHandler.java:105)\n\tat org.eclipse.jdt.ls.core.internal.handlers.InitHandler.handleInitializationOptions(InitHandler.java:109)\n\tat org.eclipse.jdt.ls.core.internal.handlers.BaseInitHandler.initialize(BaseInitHandler.java:68)\n\tat org.eclipse.jdt.ls.core.internal.handlers.JDTLanguageServer.initialize(JDTLanguageServer.java:284)\n\tat java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\n\tat java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)\n\tat java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\n\tat java.base/java.lang.reflect.Method.invoke(Method.java:568)\n\tat org.eclipse.lsp4j.jsonrpc.services.GenericEndpoint.lambda$recursiveFindRpcMethods$0(GenericEndpoint.java:65)\n\tat org.eclipse.lsp4j.jsonrpc.services.GenericEndpoint.request(GenericEndpoint.java:128)\n\tat org.eclipse.lsp4j.jsonrpc.RemoteEndpoint.handleRequest(RemoteEndpoint.java:271)\n\tat org.eclipse.lsp4j.jsonrpc.RemoteEndpoint.consume(RemoteEndpoint.java:201)\n\tat org.eclipse.jdt.ls.core.internal.ParentProcessWatcher.lambda$1(ParentProcessWatcher.java:144)\n\tat org.eclipse.lsp4j.jsonrpc.json.StreamMessageProducer.handleMessage(StreamMessageProducer.java:185)\n\tat org.eclipse.lsp4j.jsonrpc.json.StreamMessageProducer.listen(StreamMessageProducer.java:97)\n\tat org.eclipse.lsp4j.jsonrpc.json.ConcurrentMessageProcessor.run(ConcurrentMessageProcessor.java:114)\n\tat java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)\n\tat java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)\n\tat java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)\n\tat java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)\n\tat java.base/java.lang.Thread.run(Thread.java:833)\n\n"

hungrybirder avatar Dec 25 '24 06:12 hungrybirder

Same issue, I have specifically this build: jdt-language-server-1.43.0-202412191447 EDIT: Seems to have been caused by a corrupt installation, reinstalling resolves it

valentinegb avatar Dec 27 '24 17:12 valentinegb

If reinstalling jdtls didn't solved your problem, manually extract the above build @valentinegb mentioned from jdt-language-server inside your nvim/mason/packages/jdtls path.

I had been through this Equinox issue today and after reinstalling jdk, and then manually extracted the latest jdtlsbuild, it solved my problem.

Icd-Kohi avatar Dec 30 '24 03:12 Icd-Kohi

I think we ran into issues in the past where another users reported issues getting JDT-LS working with mason. https://github.com/eclipse-jdtls/eclipse.jdt.ls/issues/2898#issuecomment-2117988747 . It also looked like some kinda of corruption.

rgrunber avatar Jan 07 '25 14:01 rgrunber