idea-gitignore: NoClassDefFoundError, Version 3.2.0 on IntelliJ 2019.2
Prerequisites
- Plugin is in the latest version
- Issue was not reported yet
- Stack trace (if provided) contains
mobi.hsz.idea.gitignore
package name
Description
java.lang.NoClassDefFoundError: org/zmlx/hg4idea/ignore/lang/HgIgnoreFileType
at mobi.hsz.idea.gitignore.outer.OuterIgnoreLoaderComponent$IgnoreEditorManagerListener.determineIgnoreLanguage(OuterIgnoreLoaderComponent.java:186)
at mobi.hsz.idea.gitignore.outer.OuterIgnoreLoaderComponent$IgnoreEditorManagerListener.fileOpened(OuterIgnoreLoaderComponent.java:134)
at jdk.internal.reflect.GeneratedMethodAccessor93.invoke(Unknown Source)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
at com.intellij.util.messages.impl.MessageBusConnectionImpl.deliverMessage(MessageBusConnectionImpl.java:102)
at com.intellij.util.messages.impl.MessageBusImpl.doPumpMessages(MessageBusImpl.java:446)
at com.intellij.util.messages.impl.MessageBusImpl.pumpWaitingBuses(MessageBusImpl.java:406)
at com.intellij.util.messages.impl.MessageBusImpl.pumpMessages(MessageBusImpl.java:395)
at com.intellij.util.messages.impl.MessageBusImpl.pumpMessages(MessageBusImpl.java:379)
at com.intellij.util.messages.impl.MessageBusImpl.sendMessage(MessageBusImpl.java:372)
at com.intellij.util.messages.impl.MessageBusImpl.lambda$createTopicHandler$1(MessageBusImpl.java:242)
at com.sun.proxy.$Proxy96.fileOpened(Unknown Source)
at com.intellij.openapi.fileEditor.impl.FileEditorManagerImpl.lambda$openFileImpl4Edt$8(FileEditorManagerImpl.java:979)
at com.intellij.openapi.fileEditor.impl.FileEditorManagerImpl$5$1.run(FileEditorManagerImpl.java:1051)
at com.intellij.openapi.wm.impl.FocusManagerImpl.lambda$doWhenFocusSettlesDown$3(FocusManagerImpl.java:170)
at com.intellij.util.ui.UIUtil.invokeLaterIfNeeded(UIUtil.java:2425)
at com.intellij.ide.IdeEventQueue.ifFocusEventsInTheQueue(IdeEventQueue.java:217)
at com.intellij.ide.IdeEventQueue.executeWhenAllFocusEventsLeftTheQueue(IdeEventQueue.java:169)
at com.intellij.openapi.wm.impl.FocusManagerImpl.doWhenFocusSettlesDown(FocusManagerImpl.java:161)
at com.intellij.openapi.wm.impl.FocusManagerImpl.doWhenFocusSettlesDown(FocusManagerImpl.java:167)
at com.intellij.openapi.wm.impl.FocusManagerImpl.lambda$null$2(FocusManagerImpl.java:175)
at com.intellij.openapi.application.TransactionGuardImpl$2.run(TransactionGuardImpl.java:312)
at com.intellij.openapi.application.impl.LaterInvocator$FlushQueue.doRun(LaterInvocator.java:433)
at com.intellij.openapi.application.impl.LaterInvocator$FlushQueue.runNextEvent(LaterInvocator.java:416)
at com.intellij.openapi.application.impl.LaterInvocator$FlushQueue.run(LaterInvocator.java:399)
at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:313)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:776)
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.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:746)
at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:873)
at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:822)
at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$8(IdeEventQueue.java:461)
at com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:704)
at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:460)
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)
Caused by: java.lang.ClassNotFoundException: org.zmlx.hg4idea.ignore.lang.HgIgnoreFileType PluginClassLoader[mobi.hsz.idea.gitignore, 3.2.0.192] com.intellij.ide.plugins.cl.PluginClassLoader@1b747aac
at com.intellij.ide.plugins.cl.PluginClassLoader.loadClass(PluginClassLoader.java:75)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
... 44 more
Steps to Reproduce
- Open TypeScript file.
- That’s it.
Reproduces how often:
Everytime.
Versions
Plugin:
3.2.0
IDE:
IntelliJ IDEA 2019.2 (Ultimate Edition)
Build #IU-192.5728.98, built on July 22, 2019
Runtime version: 11.0.3+12-b304.10 x86_64
VM: OpenJDK 64-Bit Server VM by JetBrains s.r.o
Non-Bundled Plugins: String Manipulation, YAML/Ansible support, com.dubreuia, com.intellij.apacheConfig, com.jetbrains.plugins.ini4idea, com.intellij.plugins.watcher, com.oliverlockwood.plugins.jenkinsfile, mobi.hsz.idea.gitignore, nl.jworks.intellij.bootstrap3, org.intellij.plugins.postcss, BashSupport, ImportCost, Karma, com.dmarcotte.handlebars, com.intellij.plugins.html.instantEditing, com.intellij.plugins.webcomponents, com.jetbrains.plugins.yeoman, intellij.prettierJS, jballant.CommonJSAutoComplete, org.jetbrains.plugins.vue, com.emberjs, ru.adelf.idea.dotenv, training, wallaby.js
OS:
macOS Mojave 10.4.6
About this issue
- Original URL
- State: closed
- Created 5 years ago
- Reactions: 11
- Comments: 16 (3 by maintainers)
Ok, let me clarify the whole situation here, because we run into some chaos here.
.ignore plugin was supposed to not support IDE in version 2019.2+ (IntelliJ, PhpStorm, Android Studio and so on) because of the native support for the .gitignore files in the IDE.
In addition, this repository was transferred from my @hsz account to @JetBrains.
After that, there was a decision to release v3.2.0 with some changes - .gitignore and .hgignore files will be supported by the native code. Everything else stays as was before (except PayPal donation balloon and references in IDE/README). 🙂
Unfortunately, the last update contains a commit (https://github.com/JetBrains/idea-gitignore/commit/a47a934cb471fff115e4f5d39692b321e073a223), there was a reference to the class from Mercurial plugin:
org.zmlx.hg4idea.ignore.lang.HgIgnoreFileType
. If the Mercurial plugin is disabled in your IDE - class is not available, and we run intoNoClassDefFoundError
exception. So a workaround for the v3.2.0 issue is already mentioned: enabling of the Mercurial plugin.Anyway - there is a fix for this problem already commited (https://github.com/JetBrains/idea-gitignore/commit/aca47b943d89290a2532f1d69e923ca3f3981643) by @dmitry-zhuravlev Commit contains fix keyword, so this is the reason, current thread was closed automatically.
To be honest, I do not know, why the v3.2.0 was not taken down and new version with the fix was released - maybe there is a reason for that? Since it was done by the JB employees, I’ll put on hold any of my actions.
I hope that the whole situation will straighten up quickly. Stay tuned! ❤️ BTW, I’ll still be responsible for the bugfixing and support of the .ignore plugin in older IDE versions.
Thanks! hsz - Jakub Chrzanowski
Closing the issue merely indicates that a fix has been committed to the repo, not that the fix has been released. Are you even software developers? They will push a new release when they are ready. In the meantime we have two very simple workarounds. Use your heads!
Considering various repos handle that in different ways, there’s not really any way for us to know without asking. There’s no need to be that hostile when a simple question is asked that has no clear answer at that point. Are you a software developer? I’m sure you’d understand that asking questions is critical if you’re unsure of something. 😃
@ice1000 @MartinX3
IDE will provide some built-in support for .gitignore/.hgignore but the .ignore plugin should still be available as far as I know with non conflicting features.
Refs: https://blog.jetbrains.com/idea/2019/07/support-for-vcs-ignores-in-intellij-idea-and-intellij-based-ides https://blog.jetbrains.com/blog/2019/07/23/an-interview-with-jakub-chrzanowski-ignore-plugin-author/
The new version (3.2.1.192) with the fix was released. Thanks to all for the patience!
Is there a reason this is closed? What version fixes this issue as I’ve run into it just now.
Is hg4idea plugin enabled? As a workaround, enable it.
@hsz Does that mean for 2019.3 git only users, we can disable the .ignore and the hg4idea plugins, →?
Updated to latest, got the error. If it were fixed, I shouldn’t have seen the issue I’d say 🤔
I don’t even know what the
hg4idea
plugin is. If I search for it, the only thing that comes up is “Bitbucket Linky”. I’m assuming this is not the one that needs to be enabled to work around this bug?It should be the mercurial plugin