ksprojects / protobuf-jetbrains-plugin

Protobuf Support for JetBrains IDEs
https://plugins.jetbrains.com/plugin/8277
Apache License 2.0
259 stars 46 forks source link

Plugin fails to initialize after update to CLion 2021.2 #161

Closed ricab closed 3 years ago

ricab commented 3 years ago

Describe the bug

After updating to 2021.2, When opening CLion, a popup opens saying:

Plugin 'io.protostuff.protostuff-jetbrains-plugin' failed to initialize and will be disabled. Please restart CLion.` ``` Plugin 'io.protostuff.protostuff-jetbrains-plugin' failed to initialize and will be disabled. Please restart CLion. java.lang.ClassNotFoundException: io.protostuff.jetbrains.plugin.reference.FieldReferenceProviderImpl PluginClassLoader(plugin=PluginDescriptor(name=Protobuf Support, id=io.protostuff.protostuff-jetbrains-plugin, descriptorPath=plugin.xml, path=~/.local/share/JetBrains/CLion2021.2/protobuf-jetbrains-plugin, version=0.13.0, package=null), packagePrefix=null, instanceId=40, state=active) at com.intellij.serviceContainer.ComponentManagerImplKt.doLoadClass(ComponentManagerImpl.kt:1489) at com.intellij.serviceContainer.ComponentManagerImplKt.access$doLoadClass(ComponentManagerImpl.kt:1) at com.intellij.serviceContainer.ComponentManagerImpl.loadClass(ComponentManagerImpl.kt:821) at com.intellij.serviceContainer.BaseComponentAdapter.getImplementationClass(BaseComponentAdapter.kt:38) at com.intellij.serviceContainer.BaseComponentAdapter.getInstanceUncached(BaseComponentAdapter.kt:107) at com.intellij.serviceContainer.BaseComponentAdapter.getInstance(BaseComponentAdapter.kt:67) at com.intellij.serviceContainer.BaseComponentAdapter.getInstance$default(BaseComponentAdapter.kt:60) at com.intellij.serviceContainer.ComponentManagerImpl.createComponents(ComponentManagerImpl.kt:407) at com.intellij.openapi.project.impl.ProjectExImpl.init(ProjectExImpl.kt:183) at com.intellij.openapi.project.impl.ProjectManagerImpl.initProject(ProjectManagerImpl.java:178) at com.intellij.openapi.project.impl.ProjectManagerExImpl.prepareProject(ProjectManagerExImpl.kt:270) at com.intellij.openapi.project.impl.ProjectManagerExImpl.access$prepareProject(ProjectManagerExImpl.kt:57) at com.intellij.openapi.project.impl.ProjectManagerExImpl$doOpenAsync$1.invoke(ProjectManagerExImpl.kt:119) at com.intellij.openapi.project.impl.ProjectManagerExImpl$doOpenAsync$1.invoke(ProjectManagerExImpl.kt:57) at com.intellij.openapi.project.impl.ProjectUiFrameAllocator$run$progressRunner$1.apply(ProjectFrameAllocator.kt:94) at com.intellij.openapi.project.impl.ProjectUiFrameAllocator$run$progressRunner$1.apply(ProjectFrameAllocator.kt:71) at com.intellij.openapi.progress.impl.ProgressRunner.lambda$submit$3(ProgressRunner.java:243) at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$runProcess$2(CoreProgressManager.java:183) at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:705) at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:647) at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:63) at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:170) at com.intellij.openapi.progress.impl.ProgressRunner.lambda$submit$4(ProgressRunner.java:243) at java.base/java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1700) at java.base/java.util.concurrent.CompletableFuture$AsyncSupply.exec(CompletableFuture.java:1692) at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290) at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020) at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656) at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594) at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183) ```

To Reproduce

AFAICT, just open CLion 2021.2 on a project with protobuf.

Expected behavior

The plugin would initialize normally, as in previous versions.

Plugin (please complete the following information):

Additional context

CLion installed via snap.

Tried to re-enable and open on a different project, but had the same issue.

andyroberts commented 3 years ago

Affects RubyMine too.

Plugin io.protostuff.protostuff-jetbrains-plugin failed to initialize and will be disabled. Please restart RubyMine.

  java.lang.ClassNotFoundException: io.protostuff.jetbrains.plugin.reference.FieldReferenceProviderImpl
             PluginClassLoader(plugin=PluginDescriptor(name=Protobuf Support, id=io.protostuff.protostuff-jetbrains-plugin, descriptorPath=plugin.xml, path=~/Library/Application Support/JetBrains/RubyMine2021.2/plugins/protobuf-jetbrains-plugin, version=0.13.0, package=null), packagePrefix=null, instanceId=25, state=active)
    at com.intellij.serviceContainer.ComponentManagerImplKt.doLoadClass(ComponentManagerImpl.kt:1489)
    at com.intellij.serviceContainer.ComponentManagerImplKt.access$doLoadClass(ComponentManagerImpl.kt:1)
    at com.intellij.serviceContainer.ComponentManagerImpl.loadClass(ComponentManagerImpl.kt:821)
    at com.intellij.serviceContainer.BaseComponentAdapter.getImplementationClass(BaseComponentAdapter.kt:38)
    at com.intellij.serviceContainer.BaseComponentAdapter.getInstanceUncached(BaseComponentAdapter.kt:107)
    at com.intellij.serviceContainer.BaseComponentAdapter.getInstance(BaseComponentAdapter.kt:67)
    at com.intellij.serviceContainer.BaseComponentAdapter.getInstance$default(BaseComponentAdapter.kt:60)
    at com.intellij.serviceContainer.ComponentManagerImpl.createComponents(ComponentManagerImpl.kt:407)
    at com.intellij.openapi.project.impl.ProjectExImpl.init(ProjectExImpl.kt:183)
    at com.intellij.openapi.project.impl.ProjectManagerImpl.initProject(ProjectManagerImpl.java:178)
    at com.intellij.openapi.project.impl.ProjectManagerExImpl.prepareProject(ProjectManagerExImpl.kt:270)
    at com.intellij.openapi.project.impl.ProjectManagerExImpl.access$prepareProject(ProjectManagerExImpl.kt:57)
    at com.intellij.openapi.project.impl.ProjectManagerExImpl$doOpenAsync$1.invoke(ProjectManagerExImpl.kt:119)
    at com.intellij.openapi.project.impl.ProjectManagerExImpl$doOpenAsync$1.invoke(ProjectManagerExImpl.kt:57)
    at com.intellij.openapi.project.impl.ProjectUiFrameAllocator$run$progressRunner$1.apply(ProjectFrameAllocator.kt:94)
    at com.intellij.openapi.project.impl.ProjectUiFrameAllocator$run$progressRunner$1.apply(ProjectFrameAllocator.kt:71)
    at com.intellij.openapi.progress.impl.ProgressRunner.lambda$submit$3(ProgressRunner.java:243)
    at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$runProcess$2(CoreProgressManager.java:183)
    at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:705)
    at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:647)
    at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:63)
    at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:170)
    at com.intellij.openapi.progress.impl.ProgressRunner.lambda$submit$4(ProgressRunner.java:243)
    at java.base/java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1700)
    at java.base/java.util.concurrent.CompletableFuture$AsyncSupply.exec(CompletableFuture.java:1692)
    at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
    at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020)
    at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656)
    at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594)
    at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)
denisvmedia commented 3 years ago

There is an alternative: https://plugins.jetbrains.com/plugin/16422-protobuf

ricab commented 3 years ago

Oops, just noticed this. Switching to the official.