What happened to the class PatchReader.java that was in app.jar for IJ 2024.1, but not IJ 2024.3.5? It was part of the openapi, and we used it for writing some of our code for the Guidewire Studio IDE, based on Idea.
Thanks for responding. My plugin.xml already has the following:
<depends>com.intellij.modules.vcs</depends>
When I put import com.intellij.openapi.diff.impl.patch.PatchReader; in my Java class, the class name PatchReader is displayed in red because IJ cannot find it. I see PatchEP and FilePatch and other classes, but not PatchReader, which was present in IJ 2024.1.5.
Your gradle build needs to know where to find this module. The plugin.xml doesn’t help for that. This is used by the IDE when running your plugin, not by your gradle build.
Add bundledModule("intellij.platform.vcs.impl") in your build.gradle.kts, in dependencies / intellijPlatform.
In other words, you need to declare this dependency in your plugin.xml and in your gradle build.
Another good hint. We use Groovy, not Kotlin, so I imagine I have to add something to our build.gradle. There is a dependencies keyword but no intellijPlatform keyword available.
If my memory is correct, IJ 2024.3 is not officially supported by the plugin v1. It’s highly recommended to migrate to the plugin v2 if you’re building against 2024.2+ (or 2024.3+, I don’t remember the exact version).
A good first step would be to complete the migration to 2.x plugin (latest version is 2.5.0 as of writing), and then trying what is advised above again.