NoClassDefFoundError: com/intellij/openapi/vcs/ProjectLevelVcsManager

Plugin users sometimes meet java.lang.NoClassDefFoundError: com/intellij/openapi/vcs/ProjectLevelVcsManager in runtime.

In plugin.xml, we have:
com.intellij.modules.vcs

In build.gradle.kts, we have:
bundledModule(“intellij.platform.vcs.dvcs.impl”)

What could be possible reason?

Hi,
if you are using 2025.3, there have been Incompatible API changes regarding VCS.

[A]n explicit dependency should be added in build.gradle.kts using bundledModule(<moduleName>) if a plugin uses API from these modules:

  • intellij.platform.vcs.dvcs
  • intellij.platform.vcs.log
  • intellij.platform.vcs.log.graph
1 Like

Thanks for the information! I will include this incompatible change in 2025.3

But this it not the case. User’s using Goland 2025.2.5. The special case is the user is connect to WSL through Remote Development. For remote development, is there any practice we need to follow?

Another case is user meet java.lang.NoClassDefFoundError: org/jetbrains/plugins/terminal/TerminalOptionsProvider error as well in remote development.
And before using these classes. We already check plugin availability by PluginManagerCore.getPlugin(PluginId.getId(pluginId))?.isEnabled ?: false
User confirms that plugin is enabled. And they still have NoClassDefFoundError.