Skip to content

make sure bin/idea.properties is present in the installation directory #532

@andrey-vasilyev

Description

@andrey-vasilyev

Detekt plugin fails with the stacktrace below

Unexpected error while running detekt analysis

java.lang.RuntimeException: Could not find installation home path. Please make sure bin/idea.properties is present in the installation directory.
   at org.jetbrains.kotlin.com.intellij.openapi.application.PathManager.getHomePath(PathManager.java:98)
   at org.jetbrains.kotlin.com.intellij.openapi.application.PathManager.getHomePath(PathManager.java:69)
   at org.jetbrains.kotlin.com.intellij.openapi.util.BuildNumber.fromFile(BuildNumber.java:259)
   at org.jetbrains.kotlin.com.intellij.util.concurrency.SynchronizedClearableLazy._get_value_$lambda$1$lambda$0(SynchronizedClearableLazy.kt:41)
   at java.base/java.util.concurrent.atomic.AtomicReference.updateAndGet(AtomicReference.java:210)
   at org.jetbrains.kotlin.com.intellij.util.concurrency.SynchronizedClearableLazy.getValue(SynchronizedClearableLazy.kt:40)
   at org.jetbrains.kotlin.com.intellij.util.concurrency.SynchronizedClearableLazy.get(SynchronizedClearableLazy.kt:28)
   at org.jetbrains.kotlin.com.intellij.openapi.util.BuildNumber.currentVersion(BuildNumber.java:302)
   at org.jetbrains.kotlin.com.intellij.ide.plugins.PluginManagerCore.getBuildNumber(PluginManagerCore.kt:411)
   at org.jetbrains.kotlin.com.intellij.ide.plugins.DescriptorListLoadingContext$1.invoke(DescriptorListLoadingContext.kt:25)
   at org.jetbrains.kotlin.com.intellij.ide.plugins.DescriptorListLoadingContext$1.invoke(DescriptorListLoadingContext.kt:25)
   at org.jetbrains.kotlin.com.intellij.ide.plugins.DescriptorListLoadingContext.getDefaultVersion(DescriptorListLoadingContext.kt:53)
   at org.jetbrains.kotlin.com.intellij.ide.plugins.IdeaPluginDescriptorImpl.readExternal(IdeaPluginDescriptorImpl.kt:190)
   at org.jetbrains.kotlin.com.intellij.ide.plugins.PluginDescriptorLoader.loadDescriptorFromJar(PluginDescriptorLoader.kt:161)
   at org.jetbrains.kotlin.com.intellij.ide.plugins.PluginDescriptorLoader$loadForCoreEnv$1.invokeSuspend(PluginDescriptorLoader.kt:75)
   at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
   at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
   at kotlinx.coroutines.EventLoopImplBase.processNextEvent(EventLoop.common.kt:284)
   at kotlinx.coroutines.BlockingCoroutine.joinBlocking(Builders.kt:85)
   at kotlinx.coroutines.BuildersKt__BuildersKt.runBlocking(Builders.kt:59)
   at kotlinx.coroutines.BuildersKt.runBlocking(Unknown Source)
   at kotlinx.coroutines.BuildersKt__BuildersKt.runBlocking$default(Builders.kt:38)
   at kotlinx.coroutines.BuildersKt.runBlocking$default(Unknown Source)
   at org.jetbrains.kotlin.com.intellij.ide.plugins.PluginDescriptorLoader.loadForCoreEnv(PluginDescriptorLoader.kt:74)
   at org.jetbrains.kotlin.com.intellij.core.CoreApplicationEnvironment.registerExtensionPointAndExtensions(CoreApplicationEnvironment.java:234)
   at org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment$Companion.registerApplicationExtensionPointsAndExtensionsFrom(KotlinCoreEnvironment.kt:705)
   at org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment$Companion.createApplicationEnvironment(KotlinCoreEnvironment.kt:675)
   at org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment$Companion.getOrCreateApplicationEnvironment(KotlinCoreEnvironment.kt:558)
   at org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment$Companion.getOrCreateApplicationEnvironmentForProduction(KotlinCoreEnvironment.kt:534)
   at org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment$Companion.createForProduction(KotlinCoreEnvironment.kt:466)
   at io.github.detekt.parser.KotlinEnvironmentUtilsKt.createKotlinCoreEnvironment(KotlinEnvironmentUtils.kt:61)
   at io.gitlab.arturbosch.detekt.core.settings.EnvironmentFacade.environment_delegate$lambda$0(EnvironmentAware.kt:45)
   at kotlin.SynchronizedLazyImpl.getValue(LazyJVM.kt:74)
   at io.gitlab.arturbosch.detekt.core.settings.EnvironmentFacade.getEnvironment(EnvironmentAware.kt:35)
   at io.gitlab.arturbosch.detekt.core.manifests.getEnvironment(ProcessingSettings.kt)
   at io.gitlab.arturbosch.detekt.core.tooling.ParsingStrategyKt.contentToKtFile$lambda$0(ParsingStrategy.kt:13)
   at io.gitlab.arturbosch.detekt.core.tooling.Lifecycle$DefaultImpls.analyze$lambda$1(Lifecycle.kt:38)
   at io.gitlab.arturbosch.detekt.core.util.PerformanceMonitor.measure(PerformanceMonitor.kt:43)
   at io.gitlab.arturbosch.detekt.core.tooling.Lifecycle$DefaultImpls.measure(Lifecycle.kt:34)
   at io.gitlab.arturbosch.detekt.core.tooling.Lifecycle$DefaultImpls.analyze(Lifecycle.kt:38)
   at io.gitlab.arturbosch.detekt.core.tooling.DefaultLifecycle.analyze(Lifecycle.kt:61)
   at io.gitlab.arturbosch.detekt.core.tooling.AnalysisFacade.runAnalysis$lambda$8(AnalysisFacade.kt:48)
   at io.gitlab.arturbosch.detekt.core.tooling.ProcessingSpecSettingsBridgeKt.withSettings(ProcessingSpecSettingsBridge.kt:26)
   at io.gitlab.arturbosch.detekt.core.tooling.AnalysisFacade.runAnalysis$detekt_core(AnalysisFacade.kt:47)
   at io.gitlab.arturbosch.detekt.core.tooling.AnalysisFacade.run(AnalysisFacade.kt:33)
   at io.gitlab.arturbosch.detekt.idea.ConfiguredService.execute(ConfiguredService.kt:148)
   at io.gitlab.arturbosch.detekt.idea.ConfiguredService.execute(ConfiguredService.kt:125)
   at io.gitlab.arturbosch.detekt.idea.DetektAnnotator.doAnnotate(DetektAnnotator.kt:39)
   at io.gitlab.arturbosch.detekt.idea.DetektAnnotator.doAnnotate(DetektAnnotator.kt:20)
   at com.intellij.codeInsight.daemon.impl.ExternalToolPass.lambda$doAnnotate$1(ExternalToolPass.java:244)
   at com.intellij.codeInsight.daemon.impl.AnnotationSessionImpl.computeWithSession(AnnotationSessionImpl.java:87)
   at com.intellij.codeInsight.daemon.impl.AnnotationSessionImpl.computeWithSession(AnnotationSessionImpl.java:79)
   at com.intellij.codeInsight.daemon.impl.ExternalToolPass.doAnnotate(ExternalToolPass.java:242)
   at com.intellij.codeInsight.daemon.impl.ExternalToolPass.doAnnotate(ExternalToolPass.java:236)
   at com.intellij.codeInsight.daemon.impl.ExternalToolPass$1.lambda$run$3(ExternalToolPass.java:194)
   at com.intellij.codeInsight.daemon.impl.ExternalToolPass.runChangeAware(ExternalToolPass.java:309)
   at com.intellij.codeInsight.daemon.impl.ExternalToolPass$1.lambda$run$5(ExternalToolPass.java:194)
   at com.intellij.openapi.progress.util.BackgroundTaskUtil.lambda$runUnderDisposeAwareIndicator$15(BackgroundTaskUtil.java:371)
   at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$runProcess$1(CoreProgressManager.java:229)
   at com.intellij.platform.diagnostic.telemetry.helpers.TraceKt.use(trace.kt:44)
   at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$runProcess$2(CoreProgressManager.java:228)
   at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$executeProcessUnderProgress$14(CoreProgressManager.java:681)
   at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:756)
   at com.intellij.openapi.progress.impl.CoreProgressManager.computeUnderProgress(CoreProgressManager.java:712)
   at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:680)
   at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:78)
   at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:209)
   at com.intellij.openapi.progress.util.BackgroundTaskUtil.runUnderDisposeAwareIndicator(BackgroundTaskUtil.java:366)
   at com.intellij.codeInsight.daemon.impl.ExternalToolPass$1.run(ExternalToolPass.java:192)
   at com.intellij.util.ui.update.Update.execute$suspendImpl(Update.kt:61)
   at com.intellij.util.ui.update.Update.execute(Update.kt)
   at com.intellij.util.ui.update.MergingUpdateQueue.executeUpdates$suspendImpl(MergingUpdateQueue.kt:386)
   at com.intellij.util.ui.update.MergingUpdateQueue.executeUpdates(MergingUpdateQueue.kt)
   at com.intellij.util.ui.update.MergingUpdateQueue$restart$1.invokeSuspend(MergingUpdateQueue.kt:358)
   at com.intellij.util.ui.update.MergingUpdateQueue$restart$1.invoke(MergingUpdateQueue.kt)
   at com.intellij.util.ui.update.MergingUpdateQueue$restart$1.invoke(MergingUpdateQueue.kt)
   at com.intellij.util.SingleAlarm$scheduleTask$1$1$1$2.invokeSuspend(SingleAlarm.kt:405)
   at com.intellij.util.SingleAlarm$scheduleTask$1$1$1$2.invoke(SingleAlarm.kt)
   at com.intellij.util.SingleAlarm$scheduleTask$1$1$1$2.invoke(SingleAlarm.kt)
   at kotlinx.coroutines.intrinsics.UndispatchedKt.startUndispatchedOrReturn(Undispatched.kt:44)
   at kotlinx.coroutines.BuildersKt__Builders_commonKt.withContext(Builders.common.kt:157)
   at kotlinx.coroutines.BuildersKt.withContext(Unknown Source)
   at com.intellij.util.SingleAlarm$scheduleTask$1$1.invokeSuspend(SingleAlarm.kt:403)
   at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
   at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:100)
   at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:613)
   at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:1189)
   at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:778)
   at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:765)

List of files in IDEA bin folder

appletviewer.policy
brokenPlugins.db
format.sh
fsnotifier
idea
idea64.vmoptions
idea.png
idea.properties
idea.sh
idea.svg
inspect.sh
jetbrains_client64.vmoptions
jetbrains_client.sh
ltedit.sh
remote-dev-server
remote-dev-server.sh
restarter

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions