Skip to content

Commit 56ae594

Browse files
committed
Fix uri for jar files
1 parent da34cd2 commit 56ae594

File tree

1 file changed

+8
-1
lines changed

1 file changed

+8
-1
lines changed

src/main/clojure/com/github/clojure_lsp/intellij/extension/language_server_factory.clj

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,15 @@
33
:name com.github.clojure_lsp.intellij.extension.LanguageServerFactory
44
:implements [com.redhat.devtools.lsp4ij.LanguageServerFactory])
55
(:require
6+
[clojure.string :as string]
67
[com.github.clojure-lsp.intellij.server :as server]
78
[com.github.ericdallo.clj4intellij.logger :as logger]
89
[com.rpl.proxy-plus :refer [proxy+]])
910
(:import
1011
[com.intellij.execution.configurations GeneralCommandLine]
1112
[com.intellij.openapi.project Project ProjectLocator]
1213
[com.intellij.openapi.vfs VirtualFile]
14+
[com.redhat.devtools.lsp4ij LSPIJUtils]
1315
[com.redhat.devtools.lsp4ij.client LanguageClientImpl]
1416
[com.redhat.devtools.lsp4ij.client.features LSPClientFeatures]
1517
[com.redhat.devtools.lsp4ij.server OSProcessStreamConnectionProvider]
@@ -69,4 +71,9 @@
6971
(initializeParams [_ ^InitializeParams params]
7072
(.setWorkDoneToken params "clojure-lsp-startup")
7173
(.setInitializationOptions params {"dependency-scheme" "jar"
72-
"hover" {"arity-on-same-line?" true}}))))
74+
"hover" {"arity-on-same-line?" true}}))
75+
(findFileByUri [_ ^String uri]
76+
(if (and (string/starts-with? uri "file:")
77+
(string/includes? uri ".jar!"))
78+
(LSPIJUtils/findResourceFor (string/replace-first uri "file:" "jar:file:"))
79+
(LSPIJUtils/findResourceFor uri)))))

0 commit comments

Comments
 (0)