Hi! We’re experiencing an OutOfMemoryError when running the verifyPlugin Gradle task.
This happens on a branch when I’m bumping the Kotlin version used by the project. I don’t see why this would cause it, but we don’t have the issue on the main branch
Happens on CI, I can’t reproduce on my local machine
I’ve tried passing -Xmx4g to JAVA_TOOL_OPTIONS env var and I see that it’s picked up, but this still happens.
I’ve similar problem on my plugin.
I’ve the following property in gradle.properties: org.gradle.jvmargs=-Xmx4096m
Not big changes in the code:
2025-03-21T14:50:57 [main] INFO verification - Reading plugin to check from /home/circleci/project/build/distributions/intellij-gitlab-plugin-12.7.0-SNAPSHOT.zip
2025-03-21T14:50:59 [main] INFO verification - Task check-plugin parameters:
Scheduled verifications (2):
com.gitlab.msciachero.intellij-gitlab-plugin:12.7.0-SNAPSHOT against IC-251.23774.109, com.gitlab.msciachero.intellij-gitlab-plugin:12.7.0-SNAPSHOT against IC-243.26053.27
Exception in thread "main" java.lang.RuntimeException: Worker 'com.gitlab.msciachero.intellij-gitlab-plugin:12.7.0-SNAPSHOT against IC-243.26053.27' finished with error
at com.jetbrains.plugin.structure.base.utils.ExecutorWithProgress.waitAllFutures(ConcurrencyUtils.kt:96)
at com.jetbrains.plugin.structure.base.utils.ExecutorWithProgress.executeTasks(ConcurrencyUtils.kt:62)
at com.jetbrains.pluginverifier.PluginVerifierRunKt.runSeveralVerifiers(PluginVerifierRun.kt:42)
at com.jetbrains.pluginverifier.tasks.checkPlugin.CheckPluginTask.execute(CheckPluginTask.kt:44)
at com.jetbrains.pluginverifier.tasks.checkPlugin.CheckPluginTask.execute(CheckPluginTask.kt:26)
at com.jetbrains.pluginverifier.PluginVerifierMain$main$3$1.invoke(PluginVerifierMain.kt:135)
at com.jetbrains.pluginverifier.PluginVerifierMain$main$3$1.invoke(PluginVerifierMain.kt:123)
at com.jetbrains.pluginverifier.tasks.profiling.PluginVerificationProfilingsKt.measurePluginVerification(PluginVerificationProfilings.kt:11)
at com.jetbrains.pluginverifier.PluginVerifierMain.main(PluginVerifierMain.kt:123)
Caused by: java.lang.OutOfMemoryError: Java heap space
at java.base/java.util.Arrays.copyOfRangeByte(Arrays.java:3863)
at java.base/java.util.Arrays.copyOfRange(Arrays.java:3854)
at java.base/java.lang.String.<init>(String.java:4788)
at java.base/java.lang.String.<init>(String.java:1507)
at java.base/java.lang.StringBuilder.toString(StringBuilder.java:475)
at com.jetbrains.plugin.structure.classes.resolvers.PackageSet.addPackagesOfClass(PackageSet.kt:28)
at com.jetbrains.plugin.structure.classes.resolvers.JarFileResolver$readClassNamesAndServiceProviders$1.visitFile(JarFileResolver.kt:65)
at com.jetbrains.plugin.structure.classes.resolvers.JarFileResolver$readClassNamesAndServiceProviders$1.visitFile(JarFileResolver.kt:51)
at java.base/java.nio.file.Files.walkFileTree(Files.java:2799)
at java.base/java.nio.file.Files.walkFileTree(Files.java:2870)
at com.jetbrains.plugin.structure.classes.resolvers.JarFileResolver.readClassNamesAndServiceProviders(JarFileResolver.kt:51)
at com.jetbrains.plugin.structure.classes.resolvers.JarFileResolver.access$readClassNamesAndServiceProviders(JarFileResolver.kt:17)
at com.jetbrains.plugin.structure.classes.resolvers.JarFileResolver$1.invoke(JarFileResolver.kt:44)
at com.jetbrains.plugin.structure.classes.resolvers.JarFileResolver$1.invoke(JarFileResolver.kt:17)
at com.jetbrains.plugin.structure.classes.resolvers.JarFileSystemsPool.perform(JarFileSystemsPool.kt:37)
at com.jetbrains.plugin.structure.classes.resolvers.JarFileResolver.<init>(JarFileResolver.kt:43)
at com.jetbrains.plugin.structure.ide.classes.resolver.PluginDependencyFilteredResolver.asResolver(PluginDependencyFilteredResolver.kt:85)
at com.jetbrains.plugin.structure.ide.classes.resolver.PluginDependencyFilteredResolver.getResolvers(PluginDependencyFilteredResolver.kt:40)
at com.jetbrains.plugin.structure.ide.classes.resolver.PluginDependencyFilteredResolver.<init>(PluginDependencyFilteredResolver.kt:36)
at com.jetbrains.plugin.structure.ide.classes.resolver.PluginDependencyFilteredResolver.<init>(PluginDependencyFilteredResolver.kt:34)
at com.jetbrains.pluginverifier.resolution.DefaultClassResolverProvider.getIdeResolver(DefaultClassResolverProvider.kt:70)
at com.jetbrains.pluginverifier.resolution.DefaultClassResolverProvider.provide(DefaultClassResolverProvider.kt:54)
at com.jetbrains.pluginverifier.PluginVerifier.verify(PluginVerifier.kt:92)
at com.jetbrains.pluginverifier.PluginVerifier.loadPluginAndVerify(PluginVerifier.kt:84)
at com.jetbrains.pluginverifier.PluginVerifierRunKt.runSeveralVerifiers$lambda$3$lambda$2(PluginVerifierRun.kt:31)
at com.jetbrains.pluginverifier.PluginVerifierRunKt$$Lambda/0x00007f46a8416000.call(Unknown Source)
at com.jetbrains.plugin.structure.base.utils.ExecutorWithProgress$TimedCallable.call(ConcurrencyUtils.kt:133)
at com.jetbrains.plugin.structure.base.utils.ExecutorWithProgress$TimedCallable.call(ConcurrencyUtils.kt:127)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317)
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:572)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)