intellij-platform-gradle-plugin
intellij-platform-gradle-plugin copied to clipboard
1.16.0 breaks native library loading
What happened?
After updating from 1.15.0 to 1.16.0 a GitHub Actions Workflow started to fail. SDK: IC-2023.2, also tested with IC-2023.1 Java Runtime: JetBrains Runtime 17, installed on GitHub Actions
Tests are passing locally, so it's perhaps related to the environment or setup of the GitHub Actions runner. It's consistently failing with 1.16.0 and passing with 1.15.0.
The cut-off classpath (last element /home/runner/.gradle/caches/modul) seems supicious to me (see log below).
Relevant log output or stack trace
Caused by: java.lang.ExceptionInInitializerError: Exception java.lang.UnsatisfiedLinkError: Native library (com/sun/jna/linux-x86-64/libjnidispatch.so) not found in resource path (/home/runner/.gradle/caches/7.6/workerMain/gradle-worker.jar:/home/runner/work/bashsupport-pro/bashsupport-pro/build/classes/java/test:/home/runner/work/bashsupport-pro/bashsupport-pro/build/classes/kotlin/test:/home/runner/work/bashsupport-pro/bashsupport-pro/build/resources/test:/home/runner/work/bashsupport-pro/bashsupport-pro/build/classes/java/main:/home/runner/work/bashsupport-pro/bashsupport-pro/build/classes/kotlin/main:/home/runner/work/bashsupport-pro/bashsupport-pro/build/resources/main:/home/runner/work/bashsupport-pro/bashsupport-pro/libs/pty4j-bashsupport-0.12.8-bashpro.jar:/home/runner/.gradle/caches/modules-2/files-2.1/io.sentry/sentry/6.29.0/3a2fa2b5faded0956872daf262dd026dfba3f895/sentry-6.29.0.jar:/home/runner/.gradle/caches/modules-2/files-2.1/org.jetbrains/annotations/24.0.1/13c5c75c4206580aa4d683bffee658caae6c9f43/annotations-24.0.1.jar:/home/runner/.gradle/caches/modules-2/files-2.1/com.jetbrains.intellij.idea/ideaIC/2023.2/26a4bf0a5c959ecd024f48fa6d3b53c4741fdb8e/ideaIC-2023.2/lib/app-client.jar:/home/runner/.gradle/caches/modules-2/files-2.1/com.jetbrains.intellij.idea/ideaIC/2023.2/26a4bf0a5c959ecd024f48fa6d3b53c4741fdb8e/ideaIC-2023.2/lib/app.jar:/home/runner/.gradle/caches/modules-2/files-2.1/com.jetbrains.intellij.idea/ideaIC/2023.2/26a4bf0a5c959ecd024f48fa6d3b53c4741fdb8e/ideaIC-2023.2/lib/bouncy-castle.jar:/home/runner/.gradle/caches/modules-2/files-2.1/com.jetbrains.intellij.idea/ideaIC/2023.2/26a4bf0a5c959ecd024f48fa6d3b53c4741fdb8e/ideaIC-2023.2/lib/byte-buddy-agent.jar:/home/runner/.gradle/caches/modules-2/files-2.1/com.jetbrains.intellij.idea/ideaIC/2023.2/26a4bf0a5c959ecd024f48fa6d3b53c4741fdb8e/ideaIC-2023.2/lib/error-prone-annotations.jar:/home/runner/.gradle/caches/modules-2/files-2.1/com.jetbrains.intellij.idea/ideaIC/2023.2/26a4bf0a5c959ecd024f48fa6d3b53c4741fdb8e/ideaIC-2023.2/lib/external-system-rt.jar:/home/runner/.gradle/caches/modul
at com.sun.jna.Native.loadNativeDispatchLibraryFromClasspath(Native.java:1059)
at com.sun.jna.Native.loadNativeDispatchLibrary(Native.java:1015)
at com.sun.jna.Native.<clinit>(Native.java:221)
at com.intellij.jna.JnaLoader.load(JnaLoader.java:19)
at com.intellij.jna.JnaLoader.isLoaded(JnaLoader.java:35)
at com.intellij.openapi.util.io.FileSystemUtil.computeMediator(FileSystemUtil.java:55)
at com.intellij.openapi.util.io.FileSystemUtil.<clinit>(FileSystemUtil.java:50)
at com.intellij.openapi.vfs.newvfs.persistent.FSRecordsImpl.calculateVersion(FSRecordsImpl.java:154)
at com.intellij.openapi.vfs.newvfs.persistent.FSRecordsImpl.connect(FSRecordsImpl.java:186)
at com.intellij.openapi.vfs.newvfs.persistent.FSRecords.connect(FSRecords.java:90)
at com.intellij.openapi.vfs.newvfs.persistent.FSRecords.connect(FSRecords.java:85)
at com.intellij.openapi.vfs.newvfs.persistent.PersistentFSImpl.doConnect(PersistentFSImpl.java:180)
at com.intellij.openapi.vfs.newvfs.persistent.PersistentFSImpl.connect(PersistentFSImpl.java:146)
at com.intellij.openapi.vfs.newvfs.persistent.PersistentFSImpl.<init>(PersistentFSImpl.java:122)
at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:77)
at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:499)
at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:480)
at com.intellij.serviceContainer.ConstructorInjectionKt.instantiateUsingPicoContainer(constructorInjection.kt:95)
at com.intellij.serviceContainer.ComponentManagerImpl.instantiateClassWithConstructorInjection(ComponentManagerImpl.kt:1011)
at com.intellij.serviceContainer.ServiceComponentAdapter.createAndInitialize(ServiceComponentAdapter.kt:47)
at com.intellij.serviceContainer.ServiceComponentAdapter.doCreateInstance(ServiceComponentAdapter.kt:43)
at com.intellij.serviceContainer.BaseComponentAdapter.doCreateInstance(BaseComponentAdapter.kt:158)
at com.intellij.serviceContainer.BaseComponentAdapter.createInstance(BaseComponentAdapter.kt:137)
at com.intellij.serviceContainer.BaseComponentAdapter.access$createInstance(BaseComponentAdapter.kt:21)
at com.intellij.serviceContainer.BaseComponentAdapter$getInstanceAsync$2.invokeSuspend(BaseComponentAdapter.kt:185)
at com.intellij.serviceContainer.BaseComponentAdapter$getInstanceAsync$2.invoke(BaseComponentAdapter.kt)
at com.intellij.serviceContainer.BaseComponentAdapter$getInstanceAsync$2.invoke(BaseComponentAdapter.kt)
at kotlinx.coroutines.intrinsics.UndispatchedKt.startUndispatchedOrReturn(Undispatched.kt:78)
at kotlinx.coroutines.BuildersKt__Builders_commonKt.withContext(Builders.common.kt:167)
at kotlinx.coroutines.BuildersKt.withContext(Unknown Source)
at com.intellij.serviceContainer.BaseComponentAdapter.getInstanceAsync(BaseComponentAdapter.kt:180)
at com.intellij.serviceContainer.ComponentManagerImpl.getServiceAsyncIfDefined(ComponentManagerImpl.kt:646)
at com.intellij.serviceContainer.ComponentManagerImpl.getServiceAsync(ComponentManagerImpl.kt:637)
at com.intellij.ide.bootstrap.AppServicePreloadingKt$preloadCriticalServices$managingFsJob$1$1.invokeSuspend(appServicePreloading.kt:179)
at com.intellij.ide.bootstrap.AppServicePreloadingKt$preloadCriticalServices$managingFsJob$1$1.invoke(appServicePreloading.kt)
at com.intellij.ide.bootstrap.AppServicePreloadingKt$preloadCriticalServices$managingFsJob$1$1.invoke(appServicePreloading.kt)
at kotlinx.coroutines.intrinsics.UndispatchedKt.startUndispatchedOrReturn(Undispatched.kt:78)
at kotlinx.coroutines.BuildersKt__Builders_commonKt.withContext(Builders.common.kt:167)
at kotlinx.coroutines.BuildersKt.withContext(Unknown Source)
at com.intellij.diagnostic.TracerKt.subtask(tracer.kt:42)
at com.intellij.diagnostic.TracerKt.subtask$default(tracer.kt:34)
at com.intellij.ide.bootstrap.AppServicePreloadingKt$preloadCriticalServices$managingFsJob$1.invokeSuspend(appServicePreloading.kt:39)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:584)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:793)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:697)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:684)
Steps to reproduce
Hard to tell, the project is private. I'm happy to test snapshot builds...
Gradle IntelliJ Plugin version
1.16.0
Gradle version
7.6
Operating System
Linux
Link to build, i.e. failing GitHub Action job
No response