Issues after updating to JetBrains 2021.1 IDEs

Issue #1857 resolved
Scott Wells repo owner created an issue

UPDATE 2021-04-12: I've just posted 2.1.7.1 which detects the underlying state of this issue and prompts the user to disable the Docker and/or Python plugin, then assists in doing so. Hopefully this will be a short-lived change and can be removed once JetBrains releases an update that resolves the underlying issue. In the interim, this should make users who would encounter the issue aware of it immediately and help them to work around the issue easily.

WORKAROUND: It appears that this occurs when both Illuminated Cloud 2 and the JetBrains Python and Docker plugins are installed (now verified on Windows, Mac and Linux). If you encounter this issue and don't need Python AND Docker, please disable or uninstall one and/or the other in Settings / Preferences > Plugins. If you do need both JetBrains plugins, please roll back to 2020.3 until a different solution is found. If you see this without the Python and Docker plugins installed and enabled, please let me know which other plugins are installed.

Issue logged with JetBrains:

https://youtrack.jetbrains.com/issue/IDEA-266117


I've had two users now report a problem after updating to the new JetBrains 2021.1 builds that were released today. These issues manifest when IC2 needs to communicate with the Salesforce SOAP APIs as the following in idea.log (Help>Show Log in Explorer/Finder/Files):

java.lang.LinkageError: loader constraint violation for class org.apache.cxf.jaxb.attachment.JAXBAttachmentMarshaller: when selecting overriding method 'java.lang.String org.apache.cxf.jaxb.attachment.JAXBAttachmentMarshaller.addMtomAttachment(javax.activation.DataHandler, java.lang.String, java.lang.String)' the class loader com.intellij.ide.plugins.cl.PluginClassLoader @3214989f of the selected method's type org.apache.cxf.jaxb.attachment.JAXBAttachmentMarshaller, and the class loader com.intellij.util.lang.PathClassLoader @34b7bfc0 for its super type javax.xml.bind.attachment.AttachmentMarshaller have different Class objects for the type javax.activation.DataHandler used in the signature (org.apache.cxf.jaxb.attachment.JAXBAttachmentMarshaller is in unnamed module of loader com.intellij.ide.plugins.cl.PluginClassLoader @3214989f, parent loader 'bootstrap'; javax.xml.bind.attachment.AttachmentMarshaller is in unnamed module of loader com.intellij.util.lang.PathClassLoader @34b7bfc0, parent loader 'platform')

One user has successfully resolved the issue by removing "cruft" from old IDE installs, though I'm unsure exactly what was removed and, specifically, what subset of what was removed actually mattered in resolving the problem. There's an open thread of discussion here:

https://groups.google.com/a/illuminatedcloud.com/g/qanda/c/QVeGvjJuB8M/m/FBm4ZxgYCgAJ

I'm going to work with those experiencing the issue and JetBrains to try to figure out what's going on and how best to resolve it, ideally with requiring end user actions, though if those are necessary I'd like to know the minimum set of (non-disruptive) actions to take to address it. I'll include that information here as it becomes available.

Worst case scenario, users should be able to revert to 2020.3.3 as the host IDE until this problem is better understood.

Comments (21)

  1. Scott Wells reporter

    Here's a description of what was removed to resolve this issue:

    https://groups.google.com/a/illuminatedcloud.com/g/qanda/c/QVeGvjJuB8M/m/xHtWiw0aCgAJ

    As I stated in my own comment (we crossed over each other's responses, hence the duplication), if someone doesn't mind taking a few minutes to work with me on this, I'd love to isolate exactly what needs to be removed to resolve this issue. My guess is that it's going to be some older/conflicting version of jaxb*.jar based on the error message.

    If you're having this issue and are game for that, please let me know.

  2. Grant Adamson Account Deactivated

    It appears the problem might be related to a different plugin. I did a clean install of IntelliJ (removed the app and the application support folders, then reinstalled) and only added the IC plugin, and the issue was resolved. As soon as I installed all my other plugins, the issue came back again. Trying to narrow down which plugin is the cause now.

  3. Scott Wells reporter

    Thanks for the info, Grant. If/when you do isolate the other plugin causing the issue, please let me know as plugins should be fully-isolated from one another from a classloader perspective. If they're not--and especially if it's easy to demonstrate that--JetBrains definitely needs to know.

  4. Grant Adamson Account Deactivated

    It appears to be some conflict with the official Python plugin, if I disable it I have no issues generating the offline symbol table. If I enable it, the error described in the issue returns.

    Version info:

    MacOS Big Sur 11.2.3

    IntelliJ IDEA 2021.1 (Build #IU-211.6693.111)
    Illuminated Cloud 2.1.6.9

    Python plugin that causes the issue: 211.6693.115

  5. Scott Wells reporter

    Okay, thanks for the detective work. Let me try to reproduce that behavior locally and, assuming/hoping that I can, I'll see what JetBrains says. I'll add my own findings here either way. Thanks again!

  6. Scott Wells reporter

    Hmmmm...I just installed the Python plugin, restarted, and regenerated the OST without issue. That was on Windows, though I'd be very surprised if this was OS-specific. Grant, since this is reproducible for you, can please use please use About IntelliJ IDEA and then the copy button to get your install details? Here are mine:

    IntelliJ IDEA 2021.1 (Ultimate Edition)
    Build #IU-211.6693.111, built on April 6, 2021
    Licensed to Scott Wells
    Subscription is active until July 10, 2021.
    Runtime version: 11.0.10+9-b1341.35 amd64
    VM: Dynamic Code Evolution 64-Bit Server VM by JetBrains s.r.o.
    Windows 10 10.0
    GC: G1 Young Generation, G1 Old Generation
    Memory: 4096M
    Cores: 8
    Registry: analyze.exceptions.on.the.fly=true
    Non-Bundled Plugins: Pythonid (211.6693.115), com.illuminatedcloud2.intellij (2.1.6.9)
    Kotlin: 211-1.4.32-release-IJ6693.72
    

    If the only real difference is the host OS, I'll switch over to my Mac and see if I can reproduce it there.

  7. Scott Wells reporter

    Okay, I just reproduced it, and sure enough, it was on the Mac. I can't reproduce it on Windows. So weird... Anyway, I'll log a bug against JetBrains and see what they say. Thanks so much for helping to narrow this down!

  8. Didier Beaufays

    Hi Scott, it looks I had another issue after upgrading to Webstorm 2021.1 , I can still connect correctly to the different Orgs to deploy, retrieve … so it’s not related to the above issue, but the indexing and search stopped working, some Apex objects references appeared in Red in the code, searching occurences returned only the current open file result instead of project all files. I tried first to rebuild indices and object / symbol tables without luck.

    It seems that the problem is just resolved now,

    I did first disable/enable IC2 plugin
    I rebuild caches and indices
    I got an alert of High memory Usage and the possibility to increase memory “heap” size.
    After restating Webstorm , it looks like everything is working again like before.

  9. Scott Wells reporter

    Didier, yes, see #1864 for that one. It's an indexing issue in the core IDEs in 2021.1. A fix has already been committed for that one as well, so I think now we're just waiting for 2021.1.1. In the interim, you can use File>Invalidate Caches... to rebuild the underlying stale base IDE indices. Fingers crossed for a quick and effective patch for all of these problems introduced in 2021.1.

  10. Scott Wells reporter

    JetBrains has issued 2021.1.1/2 patches for their IDEs, and IC2 2.1.7.4 has been delivered with a number of fixes and enhancements including the removal of the workaround for the Python/Docker/IC2 conflict.

  11. Log in to comment