intellij-idea - IntelliJ Idea 2020.2 中插件 Lombok 中的异常
问题描述
我们已将 Intellij 更新至最新版本 IntelliJ IDEA 2020.2(终极版)Build #IU-202.6397.94,于 2020 年 7 月 27 日构建。我们收到以下错误:
com.intellij.diagnostic.PluginException: Class constructor must not have parameters: de.plushnikov.intellij.plugin.settings.ProjectSettingsPage [Plugin: Lombook Plugin]
at com.intellij.serviceContainer.ComponentManagerImpl.instantiateExtensionWithPicoContainerOnlyIfNeeded(ComponentManagerImpl.kt:694)
at com.intellij.openapi.options.ConfigurableEP$ClassProducer.createElement(ConfigurableEP.java:422)
at com.intellij.openapi.options.ConfigurableEP.createConfigurable(ConfigurableEP.java:329)
at com.intellij.openapi.options.ex.ConfigurableWrapper.createConfigurable(ConfigurableWrapper.java:45)
at com.intellij.openapi.options.ex.ConfigurableWrapper.getConfigurable(ConfigurableWrapper.java:119)
at com.intellij.openapi.options.ex.ConfigurableWrapper.cast(ConfigurableWrapper.java:94)
at com.intellij.openapi.options.ex.ConfigurableWrapper.getId(ConfigurableWrapper.java:214)
at com.intellij.openapi.options.ex.ConfigurableExtensionPointUtil.groupConfigurables(ConfigurableExtensionPointUtil.java:267)
at com.intellij.openapi.options.ex.ConfigurableExtensionPointUtil.getConfigurableGroup(ConfigurableExtensionPointUtil.java:129)
at com.intellij.openapi.options.ex.ConfigurableExtensionPointUtil.lambda$getConfigurableGroup$1(ConfigurableExtensionPointUtil.java:119)
at com.intellij.openapi.util.ClearableLazyValue$2.compute(ClearableLazyValue.java:26)
at com.intellij.openapi.util.ClearableLazyValue.getValue(ClearableLazyValue.java:39)
at com.intellij.openapi.util.AtomicClearableLazyValue.getValue(AtomicClearableLazyValue.java:9)
at com.intellij.openapi.options.ex.EpBasedConfigurableGroup.<init>(EpBasedConfigurableGroup.kt:113)
at com.intellij.openapi.options.ex.ConfigurableExtensionPointUtil.getConfigurableGroup(ConfigurableExtensionPointUtil.java:118)
at com.intellij.ide.actions.ShowSettingsUtilImpl.showSettingsDialog(ShowSettingsUtilImpl.java:129)
at de.plushnikov.intellij.plugin.activity.LombokProjectValidatorActivity$SettingsOpeningListener.hyperlinkActivated(LombokProjectValidatorActivity.java:177)
at com.intellij.notification.NotificationListener$Adapter.hyperlinkUpdate(NotificationListener.java:23)
at com.intellij.notification.EventLog$NotificationHyperlinkInfo.navigate(EventLog.java:595)
at com.intellij.execution.impl.EditorHyperlinkSupport.lambda$getLinkNavigationRunnable$0(EditorHyperlinkSupport.java:155)
at com.intellij.execution.impl.EditorHyperlinkSupport$1.mouseReleased(EditorHyperlinkSupport.java:82)
at com.intellij.openapi.editor.impl.EditorImpl$MyMouseAdapter.runMouseReleasedCommand(EditorImpl.java:3867)
at com.intellij.openapi.editor.impl.EditorImpl$MyMouseAdapter.mouseReleased(EditorImpl.java:3771)
at java.desktop/java.awt.Component.processMouseEvent(Component.java:6650)
at java.desktop/javax.swing.JComponent.processMouseEvent(JComponent.java:3345)
at java.desktop/java.awt.Component.processEvent(Component.java:6415)
at java.desktop/java.awt.Container.processEvent(Container.java:2263)
at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:5025)
at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2321)
at java.desktop/java.awt.Component.dispatchEvent(Component.java:4857)
at java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4918)
at java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Container.java:4547)
at java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Container.java:4488)
at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2307)
at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2773)
at java.desktop/java.awt.Component.dispatchEvent(Component.java:4857)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:778)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:727)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:95)
at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:751)
at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:749)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:748)
at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:967)
at com.intellij.ide.IdeEventQueue.dispatchMouseEvent(IdeEventQueue.java:904)
at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:836)
at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$8(IdeEventQueue.java:450)
at com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:744)
at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$9(IdeEventQueue.java:449)
at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:802)
at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:503)
at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
但同样适用于以前的 IntelliJ 版本。任何建议都会非常有帮助。
解决方案
只需在https://confluence.jetbrains.com/display/IDEADEV/IDEA+2020.2+latest+builds上获取最后一个 Intellij 2020.2 RC 版本(修复此错误)
还要小心安装最后一个 lombok intellij 插件(0.30.1)。
这个问题在https://github.com/mplushnikov/lombok-intellij-plugin/issues/649上有详细说明,并不完全是插件的错(这就是为什么还必须安装 intellij RC)
显然,在等待最终的 Intellij 2020.2.1 版本时,应该首选此解决方案。
有关https://youtrack.jetbrains.com/issue/IDEA-248146的更多详细信息(修复的最低构建版本是 IntelliJ IDEA 2020.2.1 RC Build #IC-202.6948.36,构建于 2020 年 8 月 18 日)
推荐阅读
- azure-devops - 为什么在 Azure DevOps 扩展的 task.json 中使用 #regex?它检查什么?
- c++ - 使用堆栈的 C++ 后缀表达式求值。我认为我没有正确转换数据
- java - 给定一个字符的矩形矩阵,为其添加一个星号(*)的边框
- php - 辅助模型未在同一张表上插入数据 larave 多个模型
- hibernate - 避免“具有相同标识符值的不同对象已与会话关联”的最佳实践
- javascript - 使用图像在画布上绘图时如何更正笔画位置?用打字稿角
- javascript - 使用 jest mock 单独运行异步函数
- sql-server - 查询以获取基于特定域名的电子邮件地址
- python - 我正在学习 docker Jupyter 深度学习课程,但遇到了导入 keras 库和包的问题
- java - 尝试使用递归反转字符串