# New LSP Client Implementation

**URL:** <https://platform.jetbrains.com/t/new-lsp-client-implementation/1122>\
**Category:** Showcase & Feedback\
**Created:** [March 27, 2025, 11:27am UTC](https://platform.jetbrains.com/t/new-lsp-client-implementation/1122 "2025-03-27T11:27:16Z")\
**Posts on this page:** 9\
**Page:** 1

<div class="post-metadata">

**Author:** ![jansorg](https://sea1.discourse-cdn.com/flex001/user_avatar/platform.jetbrains.com/jansorg/32/52_2.png) [@jansorg](https://platform.jetbrains.com/u/jansorg)\
**Post date:** [March 27, 2025, 11:27am UTC](https://platform.jetbrains.com/t/new-lsp-client-implementation/1122/1 "2025-03-27T11:27:16Z")

</div>

I’ve made a new LSP client implementation, available at [LSP Client for JetBrains IDEs | Joachim Ansorg, Software Developer](https://www.j-a.dev/lsp-dap/).

Documentation is available at [LSP Client For JetBrains IDEs | Joachim Ansorg, Software Developer](https://www.j-a.dev/lsp-dap/jetbrains-lsp-client/).  
A comparison with other clients is available at [Comparison of LSP Implementations for JetBrains IDEs | Joachim Ansorg, Software Developer](https://www.j-a.dev/lsp-dap/comparison/).

This has been in development for a long time, originating from my Swift Support plugin’s LSP support.

It’s still an early version, but most LSP features should be supported well and be integrated well into the IDE.

Let me know if you have questions or if you’d like to try it.  
Thanks!

---

<div class="post-metadata">

**Author:** ![insyncwithfoo](https://sea1.discourse-cdn.com/flex001/user_avatar/platform.jetbrains.com/insyncwithfoo/32/158_2.png) [@insyncwithfoo](https://platform.jetbrains.com/u/insyncwithfoo)\
**Post date:** [March 27, 2025, 11:40am UTC](https://platform.jetbrains.com/t/new-lsp-client-implementation/1122/2 "2025-03-27T11:40:56Z")

</div>

LSP4IJ has [a problem](https://github.com/redhat-developer/lsp4ij/issues/459) in which it cannot coexist with the native client due to shared dependencies. Does the same happen to yours?

---

<div class="post-metadata">

**Author:** ![jansorg](https://sea1.discourse-cdn.com/flex001/user_avatar/platform.jetbrains.com/jansorg/32/52_2.png) [@jansorg](https://platform.jetbrains.com/u/jansorg)\
**Post date:** [March 27, 2025, 11:58am UTC](https://platform.jetbrains.com/t/new-lsp-client-implementation/1122/3 "2025-03-27T11:58:48Z")

</div>

I haven’t tested a setup with both my LSP client library and the JetBrains setup, yet.

A similar problem would happen if several plugins use the LSP client library, they must not share the same classes.  
To fix this, I’ve made a Gradle plugin to relocate the library when a plugin using the library is built: [GitHub - jansorg/lsp-gradle-plugin: Gradle plugin to help relocating the LSP library at https://www.j-a.dev/lsp-dap for JetBrains plugins using it](https://github.com/jansorg/lsp-gradle-plugin)

If I’m not mistaken, then the LSP4J dependency would have to be relocated, too.  
Adding this to my Gradle plugin should be possible. I’ll test the setup when I find some time…  
Alternatively, I could relocate and bundle LSP4J into my JARs, but that’s probably the less preferred solution.

---

<div class="post-metadata">

**Author:** ![jansorg](https://sea1.discourse-cdn.com/flex001/user_avatar/platform.jetbrains.com/jansorg/32/52_2.png) [@jansorg](https://platform.jetbrains.com/u/jansorg)\
**Post date:** [March 28, 2025, 11:54am UTC](https://platform.jetbrains.com/t/new-lsp-client-implementation/1122/4 "2025-03-28T11:54:32Z")

</div>

@insyncwithfoo I tested this with a plugin with both my LSP and JetBrains LSP active at the same time. With 2024.2 and 2025.1 I’m not seeing this exception.  
It’s either not happening with these major versions or it’s not showing because classes bundled with a plugin are preferred.  
Please note that I’m only supporting 2024.2+

But different versions of the same library all available at runtime at the same time is often creating problems. A fix would be to shadow/relocate LSP4J in the plugin using my library or into LSP4IJ if that client is used.

---

<div class="post-metadata">

**Author:** ![xepozz](https://sea1.discourse-cdn.com/flex001/user_avatar/platform.jetbrains.com/xepozz/32/589_2.png) [@xepozz](https://platform.jetbrains.com/u/xepozz)\
**Post date:** [March 28, 2025, 5:18pm UTC](https://platform.jetbrains.com/t/new-lsp-client-implementation/1122/5 "2025-03-28T17:18:38Z")

</div>

Great news! I’ll test it soon!

---

<div class="post-metadata">

**Author:** ![yuriy.artamonov](https://sea1.discourse-cdn.com/flex001/user_avatar/platform.jetbrains.com/yuriy.artamonov/32/48_2.png) [@yuriy.artamonov](https://platform.jetbrains.com/u/yuriy.artamonov)\
**Post date:** [April 22, 2025, 9:57am UTC](https://platform.jetbrains.com/t/new-lsp-client-implementation/1122/6 "2025-04-22T09:57:25Z")

</div>

See also [Update on LSP and Template Language APIs in PyCharm](https://platform.jetbrains.com/t/update-on-lsp-and-template-language-apis-in-pycharm/1453)

---

<div class="post-metadata">

**Author:** ![jansorg](https://sea1.discourse-cdn.com/flex001/user_avatar/platform.jetbrains.com/jansorg/32/52_2.png) [@jansorg](https://platform.jetbrains.com/u/jansorg)\
**Post date:** [April 22, 2025, 10:10am UTC](https://platform.jetbrains.com/t/new-lsp-client-implementation/1122/7 "2025-04-22T10:10:32Z")

</div>

Thanks, I appreciate it!

---

<div class="post-metadata">

**Author:** ![o.myhre](https://sea1.discourse-cdn.com/flex001/user_avatar/platform.jetbrains.com/o.myhre/32/2240_2.png) [@o.myhre](https://platform.jetbrains.com/u/o.myhre)\
**Post date:** [September 19, 2026, 8:36am UTC](https://platform.jetbrains.com/t/new-lsp-client-implementation/1122/8 "2026-09-19T08:36:57Z")

</div>

Yes, I would like to try your LSP client. I am working on creating a plugin for the Simula language and have run into problems starting my Eclipse server: SimulaLspServer.jar

Where can I find the source code?

---

<div class="post-metadata">

**Author:** ![jakub.chrzanowski](https://sea1.discourse-cdn.com/flex001/user_avatar/platform.jetbrains.com/jakub.chrzanowski/32/38_2.png) [@jakub.chrzanowski](https://platform.jetbrains.com/u/jakub.chrzanowski)\
**Post date:** [September 21, 2026, 6:24am UTC](https://platform.jetbrains.com/t/new-lsp-client-implementation/1122/9 "2026-09-21T06:24:17Z")

</div>

The native LSP support in the IntelliJ Platform evolved significantly — you can start here with SDK Docs: [Language Server Protocol (LSP) | IntelliJ Platform Plugin SDK](https://plugins.jetbrains.com/docs/intellij/language-server-protocol.html#basic-implementation)
