Do not request resource from classloader using path with leading slash

Issue #114 resolved
Former user created an issue

Stacktrace:

java.lang.ExceptionInInitializerError
    at com.atlassian.bitbucket.linky.rest.Http_client_configKt.configureFuelHttpClient(http-client-config.kt:37)
    at com.atlassian.bitbucket.linky.discovery.BitbucketServerProbe$client$1.invoke(BitbucketServerProbe.kt:118)
    at com.atlassian.bitbucket.linky.discovery.BitbucketServerProbe$client$1.invoke(BitbucketServerProbe.kt:27)
    at com.atlassian.bitbucket.linky.rest.server.BitbucketServerApiImpl.<init>(BitbucketServerApiImpl.kt:23)
    at com.atlassian.bitbucket.linky.rest.server.BitbucketServerApiImpl.<init>(BitbucketServerApiImpl.kt:19)
    at com.atlassian.bitbucket.linky.discovery.BitbucketServerProbe.client(BitbucketServerProbe.kt:117)
    at com.atlassian.bitbucket.linky.discovery.BitbucketServerProbe.probe(BitbucketServerProbe.kt:78)
    at com.atlassian.bitbucket.linky.discovery.BitbucketServerProbe.probeBitbucketServer(BitbucketServerProbe.kt:42)
    at com.atlassian.bitbucket.linky.discovery.RemoteUrlAnalyzer.analyzeRemoteUrl(RepositoryAnalyzer.kt:36)
    at com.atlassian.bitbucket.linky.discovery.RepositoryAnalyzer.analyzeRepository(RepositoryAnalyzer.kt:14)
    at com.atlassian.bitbucket.linky.discovery.BitbucketRepositoryDiscoveryKt.discoverRepositories(BitbucketRepositoryDiscovery.kt:9)
    at com.atlassian.bitbucket.linky.discovery.BitbucketRepositoriesMappingListener.mappingChanged(BitbucketRepositoriesMappingListener.kt:8)
    at com.intellij.util.messages.impl.MessageBusImpl.invokeMethod(MessageBusImpl.java:671)
    at com.intellij.util.messages.impl.MessageBusImpl.invokeListener(MessageBusImpl.java:653)
    at com.intellij.util.messages.impl.MessageBusImpl.deliverMessage(MessageBusImpl.java:422)
    at com.intellij.util.messages.impl.MessageBusImpl.pumpWaitingBuses(MessageBusImpl.java:397)
    at com.intellij.util.messages.impl.MessageBusImpl.pumpMessages(MessageBusImpl.java:379)
    at com.intellij.util.messages.impl.MessageBusImpl.access$100(MessageBusImpl.java:33)
    at com.intellij.util.messages.impl.MessageBusImpl$MessagePublisher.invoke(MessageBusImpl.java:185)
    at com.sun.proxy.$Proxy120.mappingChanged(Unknown Source)
    at com.intellij.dvcs.repo.VcsRepositoryManager.checkAndUpdateRepositoriesCollection(VcsRepositoryManager.java:310)
    at com.intellij.dvcs.repo.VcsRepositoryManager.lambda$scheduleUpdate$1(VcsRepositoryManager.java:118)
    at com.intellij.util.concurrency.QueueProcessor.runSafely(QueueProcessor.java:238)
    at com.intellij.util.Alarm$Request.runSafely(Alarm.java:369)
    at com.intellij.util.Alarm$Request.run(Alarm.java:355)
    at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
    at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
    at com.intellij.util.concurrency.SchedulingWrapper$MyScheduledFutureTask.run(SchedulingWrapper.java:220)
    at com.intellij.util.concurrency.BoundedTaskExecutor.doRun(BoundedTaskExecutor.java:216)
    at com.intellij.util.concurrency.BoundedTaskExecutor.access$200(BoundedTaskExecutor.java:27)
    at com.intellij.util.concurrency.BoundedTaskExecutor$1.execute(BoundedTaskExecutor.java:195)
    at com.intellij.util.ConcurrencyUtil.runUnderThreadName(ConcurrencyUtil.java:213)
    at com.intellij.util.concurrency.BoundedTaskExecutor$1.run(BoundedTaskExecutor.java:184)
    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
    at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
    at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:668)
    at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:665)
    at java.base/java.security.AccessController.doPrivileged(Native Method)
    at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1.run(Executors.java:665)
    at java.base/java.lang.Thread.run(Thread.java:834)
Caused by: java.lang.IllegalArgumentException: Do not request resource from classloader using path with leading slash
    at com.intellij.ide.plugins.cl.PluginClassLoader.getOwnResourceAsStreamByCanonicalPath(PluginClassLoader.java:411)
    at com.intellij.ide.plugins.cl.PluginClassLoader.getResourceAsStream(PluginClassLoader.java:386)
    at com.atlassian.bitbucket.linky.stats.VersionKt.<clinit>(version.kt:4)
    ... 40 more

Induced:

Following exceptions happened soon after this one, most probably they are induced.


2021-01-28T11:19:09.563
java.lang.NoClassDefFoundError: Could not initialize class com.atlassian.bitbucket.linky.stats.VersionKt
    at com.atlassian.bitbucket.linky.rest.Http_client_configKt.configureFuelHttpClient(http-client-config.kt:37)
    at com.atlassian.bitbucket.linky.discovery.BitbucketServerProbe$client$1.invoke(BitbucketServerProbe.kt:118)
    at com.atlassian.bitbucket.linky.discovery.BitbucketServerProbe$client$1.invoke(BitbucketServerProbe.kt:27)
    at com.atlassian.bitbucket.linky.rest.server.BitbucketServerApiImpl.<init>(BitbucketServerApiImpl.kt:23)
    at com.atlassian.bitbucket.linky.rest.server.BitbucketServerApiImpl.<init>(BitbucketServerApiImpl.kt:19)
    at com.atlassian.bitbucket.linky.discovery.BitbucketServerProbe.client(BitbucketServerProbe.kt:117)
    at com.atlassian.bitbucket.linky.discovery.BitbucketServerProbe.probe(BitbucketServerProbe.kt:78)
    at com.atlassian.bitbucket.linky.discovery.BitbucketServerProbe.probeBitbucketServer(BitbucketServerProbe.kt:42)
    at com.atlassian.bitbucket.linky.discovery.RemoteUrlAnalyzer.analyzeRemoteUrl(RepositoryAnalyzer.kt:36)
    at com.atlassian.bitbucket.linky.discovery.RepositoryAnalyzer.analyzeRepository(RepositoryAnalyzer.kt:14)
    at com.atlassian.bitbucket.linky.discovery.BitbucketRepositoryDiscoveryKt.discoverRepositories(BitbucketRepositoryDiscovery.kt:9)
    at com.atlassian.bitbucket.linky.discovery.BitbucketRepositoriesMappingListener.mappingChanged(BitbucketRepositoriesMappingListener.kt:8)
    at com.intellij.util.messages.impl.MessageBusImpl.invokeMethod(MessageBusImpl.java:671)
    at com.intellij.util.messages.impl.MessageBusImpl.invokeListener(MessageBusImpl.java:653)
    at com.intellij.util.messages.impl.MessageBusImpl.deliverMessage(MessageBusImpl.java:422)
    at com.intellij.util.messages.impl.MessageBusImpl.pumpWaitingBuses(MessageBusImpl.java:397)
    at com.intellij.util.messages.impl.MessageBusImpl.pumpMessages(MessageBusImpl.java:379)
    at com.intellij.util.messages.impl.MessageBusImpl.access$100(MessageBusImpl.java:33)
    at com.intellij.util.messages.impl.MessageBusImpl$MessagePublisher.invoke(MessageBusImpl.java:185)
    at com.sun.proxy.$Proxy120.mappingChanged(Unknown Source)
    at com.intellij.dvcs.repo.VcsRepositoryManager.checkAndUpdateRepositoriesCollection(VcsRepositoryManager.java:310)
    at com.intellij.dvcs.repo.VcsRepositoryManager$MyStartupActivity.runActivity(VcsRepositoryManager.java:80)
    at com.intellij.openapi.vcs.impl.VcsInitialization.lambda$runActivities$3(VcsInitialization.java:156)
    at com.intellij.util.concurrency.QueueProcessor.runSafely(QueueProcessor.java:238)
    at com.intellij.openapi.vcs.impl.VcsInitialization.runActivities(VcsInitialization.java:156)
    at com.intellij.openapi.vcs.impl.VcsInitialization.runInitStep(VcsInitialization.java:141)
    at com.intellij.openapi.vcs.impl.VcsInitialization.execute(VcsInitialization.java:115)
    at com.intellij.openapi.vcs.impl.VcsInitialization$1.run(VcsInitialization.java:71)
    at com.intellij.openapi.progress.impl.CoreProgressManager$TaskRunnable.run(CoreProgressManager.java:964)
    at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$runProcessWithProgressAsync$5(CoreProgressManager.java:474)
    at com.intellij.openapi.progress.impl.ProgressRunner.lambda$submit$3(ProgressRunner.java:228)
    at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$runProcess$2(CoreProgressManager.java:180)
    at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:660)
    at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:612)
    at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:63)
    at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:167)
    at com.intellij.openapi.progress.impl.ProgressRunner.lambda$submit$4(ProgressRunner.java:228)
    at java.base/java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1700)
    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
    at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
    at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:668)
    at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:665)
    at java.base/java.security.AccessController.doPrivileged(Native Method)
    at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1.run(Executors.java:665)
    at java.base/java.lang.Thread.run(Thread.java:834)

IntelliJ version:

IntelliJ IDEA 2021.1 EAP (Ultimate Edition)
Build #IU-211.4961.33, built on January 28, 2021
IntelliJ IDEA EAP User
Expiration date: February 27, 2021
Runtime version: 11.0.9.1+11-b1257.1 x86_64
VM: Dynamic Code Evolution 64-Bit Server VM by JetBrains s.r.o.
macOS 11.1
GC: G1 Young Generation, G1 Old Generation
Memory: 2048M
Cores: 8
Registry: debugger.watches.in.variables=false
Non-Bundled Plugins: com.intellij.ideolog (203.0.26.0), com.atlassian.bitbucket.references (2020.3.142.eap), org.sonarlint.idea (4.13.0.24781), com.dmarcotte.handlebars (211.4961.30), org.jetbrains.plugins.vue (211.4961.30), org.asciidoctor.intellij.asciidoc (0.32.7)
Kotlin: 211-1.4.21-release-IJ4961.6

Comments (5)

  1. Vojtěch Krása

    That issue was not resolved by removing that validation, it was fixed by removing the slash, you have to do the same.

  2. Sanchu

    java.lang.IllegalArgumentException: /META-INF/plugin.xml
    at com.intellij.util.lang.UrlClassLoader.doFindResource(UrlClassLoader.java:319)
    at com.intellij.util.lang.UrlClassLoader.getResourceAsStream(UrlClassLoader.java:283)
    at com.intellij.ide.plugins.cl.PluginClassLoader.lambda$getResourceAsStream$1(PluginClassLoader.java:392)
    at com.intellij.ide.plugins.cl.PluginClassLoader.doFindResource(PluginClassLoader.java:430)
    at com.intellij.ide.plugins.cl.PluginClassLoader.findResource(PluginClassLoader.java:404)
    at com.intellij.ide.plugins.cl.PluginClassLoader.getResourceAsStream(PluginClassLoader.java:399)
    at com.atlassian.bitbucket.linky.stats.VersionKt.<clinit>(version.kt:4)
    at com.atlassian.bitbucket.linky.stats.LinkyAnalyticsStartupActivity.reportInstalled(LinkyAnalyticsStartupActivity.kt:44)
    at com.atlassian.bitbucket.linky.stats.LinkyAnalyticsStartupActivity.access$reportInstalled(LinkyAnalyticsStartupActivity.kt:24)
    at com.atlassian.bitbucket.linky.stats.LinkyAnalyticsStartupActivity$runActivity$1.run(LinkyAnalyticsStartupActivity.kt:30)
    at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
    at java.base/java.util.concurrent.FutureTask.runAndReset(FutureTask.java:305)
    at com.intellij.util.concurrency.SchedulingWrapper$MyScheduledFutureTask.run(SchedulingWrapper.java:223)
    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
    at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
    at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:668)
    at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:665)
    at java.base/java.security.AccessController.doPrivileged(Native Method)
    at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1.run(Executors.java:665)
    at java.base/java.lang.Thread.run(Thread.java:834)

  3. Daniil Penkin staff

    Thanks everyone for reporting this.

    This particular issue is fixed in 2020.3.155.eap

    Cheers,
    Daniil

  4. Log in to comment