cursive icon indicating copy to clipboard operation
cursive copied to clipboard

Unable to start the REPL in clojure project, Error - target/native/win/32/webp-imageio.dll (No such file or directory)

Open manoj-helpshift opened this issue 2 years ago • 4 comments

Error

java.io.FileNotFoundException: target/native/win/32/webp-imageio.dll (No such file or directory)

Stacktrace

java.io.FileNotFoundException: target/native/win/32/webp-imageio.dll (No such file or directory)
	at java.base/java.io.FileOutputStream.open0(Native Method)
	at java.base/java.io.FileOutputStream.open(FileOutputStream.java:293)
	at java.base/java.io.FileOutputStream.<init>(FileOutputStream.java:235)
	at java.base/java.io.FileOutputStream.<init>(FileOutputStream.java:184)
	at clojure.java.io$fn__11655.invokeStatic(io.clj:319)
	at clojure.java.io$fn__11655.invoke(io.clj:319)
	at clojure.lang.MultiFn.invoke(MultiFn.java:239)
	at clojure.java.io$copy.invokeStatic(io.clj:406)
	at clojure.java.io$copy.doInvoke(io.clj:391)
	at clojure.lang.RestFn.invoke(RestFn.java:425)
	at leiningen.core.classpath$extract_native_dep_BANG_.invokeStatic(classpath.clj:51)
	at leiningen.core.classpath$extract_native_dep_BANG_.invoke(classpath.clj:35)
	at leiningen.core.classpath$stale_extract_native_deps$iter__6762__6766$fn__6767.invoke(classpath.clj:101)
	at clojure.lang.LazySeq.sval(LazySeq.java:42)
	at clojure.lang.LazySeq.seq(LazySeq.java:51)
	at clojure.lang.RT.seq(RT.java:535)
	at clojure.core$seq__5467.invokeStatic(core.clj:139)
	at clojure.core$filter$fn__5962.invoke(core.clj:2826)
	at clojure.lang.LazySeq.sval(LazySeq.java:42)
	at clojure.lang.LazySeq.seq(LazySeq.java:51)
	at clojure.lang.Cons.next(Cons.java:39)
	at clojure.lang.RT.next(RT.java:713)
	at clojure.core$next__5451.invokeStatic(core.clj:64)
	at clojure.core.protocols$fn__8249.invokeStatic(protocols.clj:169)
	at clojure.core.protocols$fn__8249.invoke(protocols.clj:124)
	at clojure.core.protocols$fn__8204$G__8199__8213.invoke(protocols.clj:19)
	at clojure.core.protocols$seq_reduce.invokeStatic(protocols.clj:31)
	at clojure.core.protocols$fn__8236.invokeStatic(protocols.clj:75)
	at clojure.core.protocols$fn__8236.invoke(protocols.clj:75)
	at clojure.core.protocols$fn__8178$G__8173__8191.invoke(protocols.clj:13)
	at clojure.core$reduce.invokeStatic(core.clj:6886)
	at clojure.core$into.invokeStatic(core.clj:6958)
	at clojure.core$into.invoke(core.clj:6950)
	at leiningen.core.classpath$stale_extract_native_deps.invokeStatic(classpath.clj:133)
	at leiningen.core.classpath$stale_extract_native_deps.invoke(classpath.clj:54)
	at clojure.lang.AFn.applyToHelper(AFn.java:165)
	at clojure.lang.AFn.applyTo(AFn.java:144)
	at clojure.core$apply.invokeStatic(core.clj:669)
	at clojure.core$apply.invoke(core.clj:662)
	at leiningen.core.classpath$outdated_swap_BANG_.invokeStatic(classpath.clj:170)
	at leiningen.core.classpath$outdated_swap_BANG_.doInvoke(classpath.clj:147)
	at clojure.lang.RestFn.invoke(RestFn.java:580)
	at leiningen.core.classpath$extract_native_dependencies.invokeStatic(classpath.clj:401)
	at leiningen.core.classpath$extract_native_dependencies.invoke(classpath.clj:382)
	at leiningen.core.classpath$resolve_managed_dependencies.invokeStatic(classpath.clj:459)
	at leiningen.core.classpath$resolve_managed_dependencies.doInvoke(classpath.clj:436)
	at clojure.lang.RestFn.invoke(RestFn.java:445)
	at leiningen.core.classpath$get_classpath.invokeStatic(classpath.clj:600)
	at leiningen.core.classpath$get_classpath.invoke(classpath.clj:592)
	at leiningen.core.eval$classpath_arg.invokeStatic(eval.clj:225)
	at leiningen.core.eval$classpath_arg.invoke(eval.clj:223)
	at leiningen.core.eval$shell_command.invokeStatic(eval.clj:249)
	at leiningen.core.eval$shell_command.invoke(eval.clj:236)
	at leiningen.core.eval$fn__7143.invokeStatic(eval.clj:266)
	at leiningen.core.eval$fn__7143.invoke(eval.clj:264)
	at clojure.lang.MultiFn.invoke(MultiFn.java:234)
	at leiningen.javac$run_javac_subprocess.invokeStatic(javac.clj:128)
	at leiningen.javac$run_javac_subprocess.invoke(javac.clj:115)
	at leiningen.javac$javac.invokeStatic(javac.clj:147)
	at leiningen.javac$javac.doInvoke(javac.clj:136)
	at clojure.lang.RestFn.invoke(RestFn.java:410)
	at clojure.lang.AFn.applyToHelper(AFn.java:154)
	at clojure.lang.RestFn.applyTo(RestFn.java:132)
	at clojure.lang.Var.applyTo(Var.java:705)
	at clojure.core$apply.invokeStatic(core.clj:669)
	at clojure.core$apply.invoke(core.clj:662)
	at leiningen.core.main$partial_task$fn__7380.doInvoke(main.clj:284)
	at clojure.lang.RestFn.invoke(RestFn.java:410)
	at clojure.lang.AFn.applyToHelper(AFn.java:154)
	at clojure.lang.RestFn.applyTo(RestFn.java:132)
	at clojure.lang.AFunction$1.doInvoke(AFunction.java:31)
	at clojure.lang.RestFn.applyTo(RestFn.java:137)
	at clojure.core$apply.invokeStatic(core.clj:669)
	at clojure.core$apply.invoke(core.clj:662)
	at leiningen.core.main$apply_task.invokeStatic(main.clj:334)
	at leiningen.core.main$apply_task.invoke(main.clj:320)
	at leiningen.core.eval$run_prep_tasks.invokeStatic(eval.clj:51)
	at leiningen.core.eval$run_prep_tasks.invoke(eval.clj:43)
	at leiningen.core.eval$prep.invokeStatic(eval.clj:86)
	at leiningen.core.eval$prep.invoke(eval.clj:73)
	at cursive.leiningen.task$prep_hook$fn__2422.invoke(task.clj:40)
	at clojure.lang.AFn.applyToHelper(AFn.java:156)
	at clojure.lang.AFn.applyTo(AFn.java:144)
	at clojure.core$apply.invokeStatic(core.clj:669)
	at clojure.core$apply.invoke(core.clj:662)
	at cursive.leiningen.hooke$compose_hooks$fn__576.doInvoke(hooke.clj:43)
	at clojure.lang.RestFn.applyTo(RestFn.java:137)
	at clojure.core$apply.invokeStatic(core.clj:667)
	at clojure.core$apply.invoke(core.clj:662)
	at cursive.leiningen.hooke$run_hooks.invokeStatic(hooke.clj:49)
	at cursive.leiningen.hooke$run_hooks.invoke(hooke.clj:48)
	at cursive.leiningen.hooke$prepare_for_hooks$fn__581$fn__582.doInvoke(hooke.clj:57)
	at clojure.lang.RestFn.applyTo(RestFn.java:137)
	at clojure.lang.AFunction$1.doInvoke(AFunction.java:31)
	at clojure.lang.RestFn.invoke(RestFn.java:408)
	at leiningen.core.eval$eval_in_project.invokeStatic(eval.clj:367)
	at leiningen.core.eval$eval_in_project.invoke(eval.clj:361)
	at clojure.lang.AFn.applyToHelper(AFn.java:160)
	at clojure.lang.AFn.applyTo(AFn.java:144)
	at clojure.core$apply.invokeStatic(core.clj:669)
	at clojure.core$apply.invoke(core.clj:662)
	at cursive.leiningen.task$eval_hook$fn__2419.doInvoke(task.clj:29)
	at clojure.lang.RestFn.applyTo(RestFn.java:142)
	at clojure.core$apply.invokeStatic(core.clj:669)
	at clojure.core$apply.invoke(core.clj:662)
	at cursive.leiningen.hooke$compose_hooks$fn__576.doInvoke(hooke.clj:43)
	at clojure.lang.RestFn.applyTo(RestFn.java:137)
	at clojure.core$apply.invokeStatic(core.clj:667)
	at clojure.core$apply.invoke(core.clj:662)
	at cursive.leiningen.hooke$run_hooks.invokeStatic(hooke.clj:49)
	at cursive.leiningen.hooke$run_hooks.invoke(hooke.clj:48)
	at cursive.leiningen.hooke$prepare_for_hooks$fn__581$fn__582.doInvoke(hooke.clj:57)
	at clojure.lang.RestFn.applyTo(RestFn.java:137)
	at clojure.lang.AFunction$1.doInvoke(AFunction.java:31)
	at clojure.lang.RestFn.applyTo(RestFn.java:137)
	at clojure.core$apply.invokeStatic(core.clj:669)
	at clojure.core$apply.invoke(core.clj:662)
	at leiningen.repl$repl$run__11566.invoke(repl.clj:449)
	at leiningen.repl$repl.invokeStatic(repl.clj:457)
	at leiningen.repl$repl.doInvoke(repl.clj:369)
	at clojure.lang.RestFn.invoke(RestFn.java:425)
	at clojure.lang.AFn.applyToHelper(AFn.java:156)
	at clojure.lang.RestFn.applyTo(RestFn.java:132)
	at clojure.lang.Var.applyTo(Var.java:705)
	at clojure.core$apply.invokeStatic(core.clj:669)
	at clojure.core$apply.invoke(core.clj:662)
	at leiningen.core.main$partial_task$fn__7380.doInvoke(main.clj:284)
	at clojure.lang.RestFn.applyTo(RestFn.java:139)
	at clojure.lang.AFunction$1.doInvoke(AFunction.java:31)
	at clojure.lang.RestFn.applyTo(RestFn.java:137)
	at clojure.core$apply.invokeStatic(core.clj:669)
	at clojure.core$apply.invoke(core.clj:662)
	at leiningen.core.main$apply_task.invokeStatic(main.clj:334)
	at leiningen.core.main$apply_task.invoke(main.clj:320)
	at leiningen.core.main$resolve_and_apply.invokeStatic(main.clj:343)
	at leiningen.core.main$resolve_and_apply.invoke(main.clj:336)
	at cursive.leiningen.task$task_details$fn__2445.invoke(task.clj:78)
	at cursive.leiningen.task$task_details.invokeStatic(task.clj:73)
	at cursive.leiningen.task$task_details.invoke(task.clj:42)
	at clojure.lang.Var.invoke(Var.java:388)
	at org.projectodd.shimdandy.impl.ClojureRuntimeShimImpl.invoke(ClojureRuntimeShimImpl.java:119)
	at org.projectodd.shimdandy.impl.ClojureRuntimeShimImpl.invoke(ClojureRuntimeShimImpl.java:112)
	at cursive.shim.ShimBootstrap$Shim.apply(ShimBootstrap.java:53)
	at cursive.repl.runner.LocalConfiguration$createLeinParameters$ret$1.invoke(ReplRunConfigurations.kt:458)
	at cursive.repl.runner.LocalConfiguration$createLeinParameters$ret$1.invoke(ReplRunConfigurations.kt:457)
	at cursive.shim.ShimProvider.withShim(Shim.kt:117)
	at cursive.repl.runner.LocalConfiguration.createLeinParameters(ReplRunConfigurations.kt:457)
	at cursive.repl.runner.LocalConfiguration.access$createLeinParameters(ReplRunConfigurations.kt:388)
	at cursive.repl.runner.LocalConfiguration$getRunProfileState$1.createDeferredParameters(ReplRunConfigurations.kt:427)
	at cursive.runner.DeferredCommandLineState.cacheDeferredParameters(Deferred.kt:72)
	at cursive.runner.AbstractDeferredRunner$execute$1.run(Deferred.kt:104)
	at com.intellij.openapi.progress.impl.CoreProgressManager.startTask(CoreProgressManager.java:429)
	at com.intellij.openapi.progress.impl.ProgressManagerImpl.startTask(ProgressManagerImpl.java:114)
	at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$runProcessWithProgressAsynchronously$6(CoreProgressManager.java:480)
	at com.intellij.openapi.progress.impl.ProgressRunner.lambda$submit$3(ProgressRunner.java:252)
	at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$runProcess$2(CoreProgressManager.java:186)
	at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$executeProcessUnderProgress$13(CoreProgressManager.java:604)
	at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:679)
	at com.intellij.openapi.progress.impl.CoreProgressManager.computeUnderProgress(CoreProgressManager.java:635)
	at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:603)
	at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:60)
	at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:173)
	at com.intellij.openapi.progress.impl.ProgressRunner.lambda$submit$4(ProgressRunner.java:252)
	at java.base/java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1768)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
	at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:702)
	at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:699)
	at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
	at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1.run(Executors.java:699)
	at java.base/java.lang.Thread.run(Thread.java:833)

Intelij Version: Intelij Idea 2022.3.3(Community Edition) Cursive version: 1.13.1-eap1-2022.3 Leingen version: 2.9.6 OS - Mac OS Java Version java version "1.8.0_192" Java(TM) SE Runtime Environment (build 1.8.0_192-b12) Java HotSpot(TM) 64-Bit Server VM (build 25.192-b12, mixed mode)

This issue causing problem in one project but sample project working fine.

manoj-helpshift avatar Jul 29 '23 18:07 manoj-helpshift

It looks like this is a project using some native deps. Can you share the relevant part of your project.clj?

cursive-ghost avatar Jul 29 '23 20:07 cursive-ghost

Hi @cursive-ide , I checked our project.clj file and we don't have any native library dependency.

NOTE: This was working with an older version of the Intelij + cursive plugin in the same project.

  • Cursive(1.10.0-2020.3) : https://plugins.jetbrains.com/plugin/8090-cursive/versions
  • InteliJ(2020.3) : https://confluence.jetbrains.com/display/IDEADEV/IDEA+2020.3+latest+builds

manoj-helpshift avatar Jul 31 '23 11:07 manoj-helpshift

What I suspect has happened is that one of your dependencies has been updated, and the new dep has a native component which triggers that handling in lein. I'm not sure how to find which one though. Do you have any dependencies with native in the name?

cursive-ghost avatar Jul 31 '23 15:07 cursive-ghost

Sure, will check more with our team.

manoj-helpshift avatar Aug 18 '23 05:08 manoj-helpshift