acme-lsp icon indicating copy to clipboard operation
acme-lsp copied to clipboard

kotlin-language-server crashes during initialization

Open ilanpillemer opened this issue 5 years ago • 1 comments

Does acme-lsp work with JSON-RPC communications with a lsp-server? I am trying to get it to work with https://github.com/fwcd/kotlin-language-server But I get errors like the below.

2019/10/25 13:55:18 log: LSP Error: client Internal error: java.lang.reflect.InvocationTargetException 2019/10/25 13:55:18 log: LSP Error: java.lang.RuntimeException: java.lang.reflect.InvocationTargetException 2019/10/25 13:55:18 log: LSP Error: at org.eclipse.lsp4j.jsonrpc.services.GenericEndpoint.lambda$null$0(GenericEndpoint.java:67) 2019/10/25 13:55:18 log: LSP Error: at org.eclipse.lsp4j.jsonrpc.services.GenericEndpoint.request(GenericEndpoint.java:120) 2019/10/25 13:55:18 log: LSP Error: at org.eclipse.lsp4j.jsonrpc.RemoteEndpoint.handleRequest(RemoteEndpoint.java:261) 2019/10/25 13:55:18 log: LSP Error: at org.eclipse.lsp4j.jsonrpc.RemoteEndpoint.consume(RemoteEndpoint.java:190) 2019/10/25 13:55:18 log: LSP Error: at org.eclipse.lsp4j.jsonrpc.json.StreamMessageProducer.handleMessage(StreamMessageProducer.java:192) 2019/10/25 13:55:18 log: LSP Error: at org.eclipse.lsp4j.jsonrpc.json.StreamMessageProducer.listen(StreamMessageProducer.java:94) 2019/10/25 13:55:18 log: LSP Error: at org.eclipse.lsp4j.jsonrpc.json.ConcurrentMessageProcessor.run(ConcurrentMessageProcessor.java:113) 2019/10/25 13:55:18 log: LSP Error: at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) 2019/10/25 13:55:18 log: LSP Error: at java.util.concurrent.FutureTask.run(FutureTask.java:266) 2019/10/25 13:55:18 log: LSP Error: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) 2019/10/25 13:55:18 log: LSP Error: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) 2019/10/25 13:55:18 log: LSP Error: at java.lang.Thread.run(Thread.java:748) 2019/10/25 13:55:18 log: LSP Error: Caused by: java.lang.reflect.InvocationTargetException 2019/10/25 13:55:18 log: LSP Error: at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 2019/10/25 13:55:18 log: LSP Error: at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 2019/10/25 13:55:18 log: LSP Error: at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 2019/10/25 13:55:18 log: LSP Error: at java.lang.reflect.Method.invoke(Method.java:498) 2019/10/25 13:55:18 log: LSP Error: at org.eclipse.lsp4j.jsonrpc.services.GenericEndpoint.lambda$null$0(GenericEndpoint.java:65) 2019/10/25 13:55:18 log: LSP Error: ... 11 more 2019/10/25 13:55:18 log: LSP Error: Caused by: java.lang.NullPointerException 2019/10/25 13:55:18 log: LSP Error: at sun.nio.fs.UnixFileSystem$3.matches(UnixFileSystem.java:310) 2019/10/25 13:55:18 log: LSP Error: at org.javacs.kt.SourceFilesKt$findSourceFiles$1.test(SourceFiles.kt:212) 2019/10/25 13:55:18 log: LSP Error: at org.javacs.kt.SourceFilesKt$findSourceFiles$1.test(SourceFiles.kt) 2019/10/25 13:55:18 log: LSP Error: at java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:174) 2019/10/25 13:55:18 log: LSP Error: at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193) 2019/10/25 13:55:18 log: LSP Error: at java.util.Iterator.forEachRemaining(Iterator.java:116) 2019/10/25 13:55:18 log: LSP Error: at java.util.Spliterators$IteratorSpliterator.forEachRemaining(Spliterators.java:1801) 2019/10/25 13:55:18 log: LSP Error: at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:482) 2019/10/25 13:55:18 log: LSP Error: at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:472) 2019/10/25 13:55:18 log: LSP Error: at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708) 2019/10/25 13:55:18 log: LSP Error: at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) 2019/10/25 13:55:18 log: LSP Error: at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:566) 2019/10/25 13:55:18 log: LSP Error: at org.javacs.kt.SourceFilesKt.findSourceFiles(SourceFiles.kt:213) 2019/10/25 13:55:18 log: LSP Error: at org.javacs.kt.SourceFilesKt.access$findSourceFiles(SourceFiles.kt:1) 2019/10/25 13:55:18 log: LSP Error: at org.javacs.kt.SourceFiles.addWorkspaceRoot(SourceFiles.kt:145) 2019/10/25 13:55:18 log: LSP Error: at org.javacs.kt.KotlinLanguageServer.initialize(KotlinLanguageServer.kt:75) 2019/10/25 13:55:18 log: LSP Error: ... 16 more 2019/10/25 13:55:18 didOpen failed in file manager: failed to connect to language server ["kotlin-language-server"]: initialize failed: Internal error. 2019/10/25 13:56:58 log: LSP Error: client Internal error: java.lang.reflect.InvocationTargetException 2019/10/25 13:56:58 log: LSP Error: java.lang.RuntimeException: java.lang.reflect.InvocationTargetException 2019/10/25 13:56:58 log: LSP Error: at org.eclipse.lsp4j.jsonrpc.services.GenericEndpoint.lambda$null$0(GenericEndpoint.java:67) 2019/10/25 13:56:58 log: LSP Error: at org.eclipse.lsp4j.jsonrpc.services.GenericEndpoint.request(GenericEndpoint.java:120) 2019/10/25 13:56:58 log: LSP Error: at org.eclipse.lsp4j.jsonrpc.RemoteEndpoint.handleRequest(RemoteEndpoint.java:261) 2019/10/25 13:56:58 log: LSP Error: at org.eclipse.lsp4j.jsonrpc.RemoteEndpoint.consume(RemoteEndpoint.java:190) 2019/10/25 13:56:58 log: LSP Error: at org.eclipse.lsp4j.jsonrpc.json.StreamMessageProducer.handleMessage(StreamMessageProducer.java:192) 2019/10/25 13:56:58 log: LSP Error: at org.eclipse.lsp4j.jsonrpc.json.StreamMessageProducer.listen(StreamMessageProducer.java:94) 2019/10/25 13:56:58 log: LSP Error: at org.eclipse.lsp4j.jsonrpc.json.ConcurrentMessageProcessor.run(ConcurrentMessageProcessor.java:113) 2019/10/25 13:56:58 log: LSP Error: at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) 2019/10/25 13:56:58 log: LSP Error: at java.util.concurrent.FutureTask.run(FutureTask.java:266) 2019/10/25 13:56:58 log: LSP Error: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) 2019/10/25 13:56:58 log: LSP Error: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) 2019/10/25 13:56:58 log: LSP Error: at java.lang.Thread.run(Thread.java:748) 2019/10/25 13:56:58 log: LSP Error: Caused by: java.lang.reflect.InvocationTargetException 2019/10/25 13:56:58 log: LSP Error: at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 2019/10/25 13:56:58 log: LSP Error: at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 2019/10/25 13:56:58 log: LSP Error: at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 2019/10/25 13:56:58 log: LSP Error: at java.lang.reflect.Method.invoke(Method.java:498) 2019/10/25 13:56:58 log: LSP Error: at org.eclipse.lsp4j.jsonrpc.services.GenericEndpoint.lambda$null$0(GenericEndpoint.java:65) 2019/10/25 13:56:58 log: LSP Error: ... 11 more 2019/10/25 13:56:58 log: LSP Error: Caused by: java.lang.NullPointerException 2019/10/25 13:56:58 log: LSP Error: at sun.nio.fs.UnixFileSystem$3.matches(UnixFileSystem.java:310) 2019/10/25 13:56:58 log: LSP Error: at org.javacs.kt.SourceFilesKt$findSourceFiles$1.test(SourceFiles.kt:212) 2019/10/25 13:56:58 log: LSP Error: at org.javacs.kt.SourceFilesKt$findSourceFiles$1.test(SourceFiles.kt) 2019/10/25 13:56:58 log: LSP Error: at java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:174) 2019/10/25 13:56:58 log: LSP Error: at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193) 2019/10/25 13:56:58 log: LSP Error: at java.util.Iterator.forEachRemaining(Iterator.java:116) 2019/10/25 13:56:58 log: LSP Error: at java.util.Spliterators$IteratorSpliterator.forEachRemaining(Spliterators.java:1801) 2019/10/25 13:56:58 log: LSP Error: at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:482) 2019/10/25 13:56:58 log: LSP Error: at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:472) 2019/10/25 13:56:58 log: LSP Error: at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708) 2019/10/25 13:56:58 log: LSP Error: at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) 2019/10/25 13:56:58 log: LSP Error: at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:566) 2019/10/25 13:56:58 log: LSP Error: at org.javacs.kt.SourceFilesKt.findSourceFiles(SourceFiles.kt:213) 2019/10/25 13:56:58 log: LSP Error: at org.javacs.kt.SourceFilesKt.access$findSourceFiles(SourceFiles.kt:1) 2019/10/25 13:56:58 log: LSP Error: at org.javacs.kt.SourceFiles.addWorkspaceRoot(SourceFiles.kt:145) 2019/10/25 13:56:58 log: LSP Error: at org.javacs.kt.KotlinLanguageServer.initialize(KotlinLanguageServer.kt:75) 2019/10/25 13:56:58 log: LSP Error: ... 16 more 2019/10/25 13:56:58 : DidChange: unknown language server for URI "file:///Users/ilanpillemer/Repos/bxbdigital/model-language/src/main/kotlin/DslInterpreter.kt" 2019/10/25 13:56:59 log: LSP Error: client Internal error: java.lang.reflect.InvocationTargetException 2019/10/25 13:56:59 log: LSP Error: java.lang.RuntimeException: java.lang.reflect.InvocationTargetException 2019/10/25 13:56:59 log: LSP Error: at org.eclipse.lsp4j.jsonrpc.services.GenericEndpoint.lambda$null$0(GenericEndpoint.java:67) 2019/10/25 13:56:59 log: LSP Error: at org.eclipse.lsp4j.jsonrpc.services.GenericEndpoint.request(GenericEndpoint.java:120) 2019/10/25 13:56:59 log: LSP Error: at org.eclipse.lsp4j.jsonrpc.RemoteEndpoint.handleRequest(RemoteEndpoint.java:261) 2019/10/25 13:56:59 log: LSP Error: at org.eclipse.lsp4j.jsonrpc.RemoteEndpoint.consume(RemoteEndpoint.java:190) 2019/10/25 13:56:59 log: LSP Error: at org.eclipse.lsp4j.jsonrpc.json.StreamMessageProducer.handleMessage(StreamMessageProducer.java:192) 2019/10/25 13:56:59 log: LSP Error: at org.eclipse.lsp4j.jsonrpc.json.StreamMessageProducer.listen(StreamMessageProducer.java:94) 2019/10/25 13:56:59 log: LSP Error: at org.eclipse.lsp4j.jsonrpc.json.ConcurrentMessageProcessor.run(ConcurrentMessageProcessor.java:113) 2019/10/25 13:56:59 log: LSP Error: at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) 2019/10/25 13:56:59 log: LSP Error: at java.util.concurrent.FutureTask.run(FutureTask.java:266) 2019/10/25 13:56:59 log: LSP Error: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) 2019/10/25 13:56:59 log: LSP Error: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) 2019/10/25 13:56:59 log: LSP Error: at java.lang.Thread.run(Thread.java:748) 2019/10/25 13:56:59 log: LSP Error: Caused by: java.lang.reflect.InvocationTargetException 2019/10/25 13:56:59 log: LSP Error: at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 2019/10/25 13:56:59 log: LSP Error: at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 2019/10/25 13:56:59 log: LSP Error: at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 2019/10/25 13:56:59 log: LSP Error: at java.lang.reflect.Method.invoke(Method.java:498) 2019/10/25 13:56:59 log: LSP Error: at org.eclipse.lsp4j.jsonrpc.services.GenericEndpoint.lambda$null$0(GenericEndpoint.java:65) 2019/10/25 13:56:59 log: LSP Error: ... 11 more 2019/10/25 13:56:59 log: LSP Error: Caused by: java.lang.NullPointerException 2019/10/25 13:56:59 log: LSP Error: at sun.nio.fs.UnixFileSystem$3.matches(UnixFileSystem.java:310) 2019/10/25 13:56:59 log: LSP Error: at org.javacs.kt.SourceFilesKt$findSourceFiles$1.test(SourceFiles.kt:212) 2019/10/25 13:56:59 log: LSP Error: at org.javacs.kt.SourceFilesKt$findSourceFiles$1.test(SourceFiles.kt) 2019/10/25 13:56:59 log: LSP Error: at java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:174) 2019/10/25 13:56:59 log: LSP Error: at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193) 2019/10/25 13:56:59 log: LSP Error: at java.util.Iterator.forEachRemaining(Iterator.java:116) 2019/10/25 13:56:59 log: LSP Error: at java.util.Spliterators$IteratorSpliterator.forEachRemaining(Spliterators.java:1801) 2019/10/25 13:56:59 log: LSP Error: at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:482) 2019/10/25 13:56:59 log: LSP Error: at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:472) 2019/10/25 13:56:59 log: LSP Error: at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708) 2019/10/25 13:56:59 log: LSP Error: at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) 2019/10/25 13:56:59 log: LSP Error: at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:566) 2019/10/25 13:56:59 log: LSP Error: at org.javacs.kt.SourceFilesKt.findSourceFiles(SourceFiles.kt:213) 2019/10/25 13:56:59 log: LSP Error: at org.javacs.kt.SourceFilesKt.access$findSourceFiles(SourceFiles.kt:1) 2019/10/25 13:56:59 log: LSP Error: at org.javacs.kt.SourceFiles.addWorkspaceRoot(SourceFiles.kt:145) 2019/10/25 13:56:59 log: LSP Error: at org.javacs.kt.KotlinLanguageServer.initialize(KotlinLanguageServer.kt:75) 2019/10/25 13:56:59 log: LSP Error: ... 16 more

ilanpillemer avatar Oct 25 '19 13:10 ilanpillemer

I certainly want to get acme-lsp working with all LSP servers that follow the LSP spec. It just hasn't been tested with many servers.

In this case, it looks like kotlin-language-server is crashing during initialization. Have you tested this server with VSCode or some other editor? Does it work?

Also, do you know if there is a way for kotlin-language-server to print json-rpc trace on stderr? I should really add support for tracing in acme-lsp, for servers that can't do tracing.

The crash:

$ acme-lsp -v -server '\.kt$:/tmp/fhs.Downloads/server/bin/kotlin-language-server'
2019/10/25 12:01:59 log: LSP Info: main      Connected to client
2019/10/25 12:01:59 log: LSP Info: client    Adding workspace file:/// to source path
Oct 25, 2019 12:01:59 PM org.eclipse.lsp4j.jsonrpc.RemoteEndpoint fallbackResponseError
SEVERE: Internal error: java.lang.reflect.InvocationTargetException
java.lang.RuntimeException: java.lang.reflect.InvocationTargetException
	at org.eclipse.lsp4j.jsonrpc.services.GenericEndpoint.lambda$null$0(GenericEndpoint.java:67)
	at org.eclipse.lsp4j.jsonrpc.services.GenericEndpoint.request(GenericEndpoint.java:120)
	at org.eclipse.lsp4j.jsonrpc.RemoteEndpoint.handleRequest(RemoteEndpoint.java:261)
	at org.eclipse.lsp4j.jsonrpc.RemoteEndpoint.consume(RemoteEndpoint.java:190)
	at org.eclipse.lsp4j.jsonrpc.json.StreamMessageProducer.handleMessage(StreamMessageProducer.java:192)
	at org.eclipse.lsp4j.jsonrpc.json.StreamMessageProducer.listen(StreamMessageProducer.java:94)
	at org.eclipse.lsp4j.jsonrpc.json.ConcurrentMessageProcessor.run(ConcurrentMessageProcessor.java:99)
	at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:514)
	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1135)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
	at java.base/java.lang.Thread.run(Thread.java:844)
Caused by: java.lang.reflect.InvocationTargetException
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:564)
	at org.eclipse.lsp4j.jsonrpc.services.GenericEndpoint.lambda$null$0(GenericEndpoint.java:65)
	... 11 more
Caused by: java.lang.NullPointerException
	at java.base/sun.nio.fs.UnixFileSystem$3.matches(UnixFileSystem.java:309)
	at org.javacs.kt.SourceFilesKt$findSourceFiles$1.test(SourceFiles.kt:196)
	at org.javacs.kt.SourceFilesKt$findSourceFiles$1.test(SourceFiles.kt)
	at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:176)
	at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:195)
	at java.base/java.util.Iterator.forEachRemaining(Iterator.java:133)
	at java.base/java.util.Spliterators$IteratorSpliterator.forEachRemaining(Spliterators.java:1801)
	at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:484)
	at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474)
	at java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:913)
	at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
	at java.base/java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:578)
	at org.javacs.kt.SourceFilesKt.findSourceFiles(SourceFiles.kt:197)
	at org.javacs.kt.SourceFilesKt.access$findSourceFiles(SourceFiles.kt:1)
	at org.javacs.kt.SourceFiles.addWorkspaceRoot(SourceFiles.kt:129)
	at org.javacs.kt.KotlinLanguageServer.initialize(KotlinLanguageServer.kt:70)
	... 16 more

2019/10/25 12:01:59 log: LSP Error: client    Internal error: java.lang.reflect.InvocationTargetException
2019/10/25 12:01:59 didOpen failed in file manager: failed to connect to language server ["/tmp/fhs.Downloads/server/bin/kotlin-language-server"]: initialize failed: Internal error.

fhs avatar Oct 25 '19 16:10 fhs