This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2022-01-06
Channels
- # adventofcode (10)
- # ai (2)
- # aleph (2)
- # announcements (21)
- # beginners (25)
- # calva (7)
- # cider (19)
- # clj-kondo (28)
- # clj-on-windows (3)
- # cljdoc (6)
- # clojure (80)
- # clojure-dev (15)
- # clojure-europe (29)
- # clojure-italy (3)
- # clojure-nl (37)
- # clojure-uk (4)
- # clojurescript (3)
- # cloverage (1)
- # conjure (6)
- # core-async (2)
- # cursive (17)
- # datalevin (9)
- # datomic (7)
- # deps-new (23)
- # emacs (4)
- # figwheel-main (6)
- # fulcro (6)
- # honeysql (19)
- # improve-getting-started (4)
- # inf-clojure (2)
- # introduce-yourself (5)
- # jobs (1)
- # leiningen (6)
- # lsp (73)
- # malli (1)
- # nrepl (2)
- # off-topic (37)
- # polylith (9)
- # quil (2)
- # reitit (16)
- # releases (2)
- # remote-jobs (6)
- # rewrite-clj (38)
- # shadow-cljs (1)
- # tools-build (1)
Hi, I'm using intellij on ubuntu. I can't see any dependencies because I get an error. In clojure deps -> projectname -> /my/project/path/deps.edn: status code: 401, reason phrase: Unauthorized (401) I changed permisions for both intellij and my project to give full access (ls -l), but it shows the same error Any ideas how to solve it?
I was missing .m2/settings.xml for datomic
Does it work outside cursive?
That's an http code, so I'd guess it's access to a repository
Yeah I can start the project and everything. It was also working previously and not showing this error. I just fresh installed due to my laptop issues.
I've started seeing this error in the Run panel when running my REPL run configuration, which is really unhelpful for debugging what's wrong with it. Any ideas what's happening / how I could debug this?
Suppressed exit
That error is coming from Leiningen. What that usually means is some code in lein is trying to exit the process, and Cursive is preventing it so that it doesn’t dump the whole Cursive process. The usual culprit is a lein plugin. If you look in your log (Help | Show log in Finder/Explorer), you should see a line somewhere: “Exit called in Leiningen” which will give you a stacktrace to where it happened.
Thanks for the quick response @U0567Q30W, sorry I took a while to get back to you, managed to find it, now I need to work out why it's throwing a null exception instead of the expected compilation error...
#cursive.shim.IndicatorBridge - Exit called in Leiningen:
java.lang.RuntimeException: null
at cursive.leiningen.project$add_standard_hooks_BANG_$fn__2318$fn__2319.invoke (project.clj:515)
cursive.leiningen.project$add_standard_hooks_BANG_$fn__2318.doInvoke (project.clj:515)
clojure.lang.RestFn.applyTo (RestFn.java:139)
clojure.core$apply.invokeStatic (core.clj:667)
clojure.core$apply.invoke (core.clj:660)
cursive.leiningen.hooke$compose_hooks$fn__1838.doInvoke (hooke.clj:43)
clojure.lang.RestFn.applyTo (RestFn.java:137)
clojure.core$apply.invokeStatic (core.clj:665)
clojure.core$apply.invoke (core.clj:660)
cursive.leiningen.hooke$run_hooks.invokeStatic (hooke.clj:49)
cursive.leiningen.hooke$run_hooks.invoke (hooke.clj:48)
cursive.leiningen.hooke$prepare_for_hooks$fn__1843$fn__1844.doInvoke (hooke.clj:57)
clojure.lang.RestFn.applyTo (RestFn.java:137)
clojure.lang.AFunction$1.doInvoke (AFunction.java:31)
clojure.lang.RestFn.invoke (RestFn.java:408)
leiningen.javac$run_javac_subprocess.invokeStatic (javac.clj:133)
leiningen.javac$run_javac_subprocess.invoke (javac.clj:115)
leiningen.javac$javac.invokeStatic (javac.clj:147)
leiningen.javac$javac.doInvoke (javac.clj:136)
clojure.lang.RestFn.invoke (RestFn.java:410)
clojure.lang.AFn.applyToHelper (AFn.java:154)
clojure.lang.RestFn.applyTo (RestFn.java:132)
clojure.lang.Var.applyTo (Var.java:705)
clojure.core$apply.invokeStatic (core.clj:667)
clojure.core$apply.invoke (core.clj:660)
leiningen.core.main$partial_task$fn__7356.doInvoke (main.clj:284)
clojure.lang.RestFn.invoke (RestFn.java:410)
clojure.lang.AFn.applyToHelper (AFn.java:154)
clojure.lang.RestFn.applyTo (RestFn.java:132)
clojure.lang.AFunction$1.doInvoke (AFunction.java:31)
clojure.lang.RestFn.applyTo (RestFn.java:137)
clojure.core$apply.invokeStatic (core.clj:667)
clojure.core$apply.invoke (core.clj:660)
leiningen.core.main$apply_task.invokeStatic (main.clj:334)
leiningen.core.main$apply_task.invoke (main.clj:320)
clojure.lang.AFn.applyToHelper (AFn.java:160)
clojure.lang.AFn.applyTo (AFn.java:144)
clojure.core$apply.invokeStatic (core.clj:665)
clojure.core$apply.invoke (core.clj:660)
cursive.leiningen.hooke$run_hooks.invokeStatic (hooke.clj:49)
cursive.leiningen.hooke$run_hooks.invoke (hooke.clj:48)
cursive.leiningen.hooke$prepare_for_hooks$fn__1843$fn__1844.doInvoke (hooke.clj:57)
clojure.lang.RestFn.applyTo (RestFn.java:137)
clojure.lang.AFunction$1.doInvoke (AFunction.java:31)
clojure.lang.RestFn.invoke (RestFn.java:436)
leiningen.core.eval$run_prep_tasks.invokeStatic (eval.clj:51)
leiningen.core.eval$run_prep_tasks.invoke (eval.clj:43)
leiningen.core.eval$prep.invokeStatic (eval.clj:86)
leiningen.core.eval$prep.invoke (eval.clj:73)
cursive.leiningen.task$prep_hook$fn__2418.invoke (task.clj:41)
clojure.lang.AFn.applyToHelper (AFn.java:156)
clojure.lang.AFn.applyTo (AFn.java:144)
clojure.core$apply.invokeStatic (core.clj:667)
clojure.core$apply.invoke (core.clj:660)
cursive.leiningen.hooke$compose_hooks$fn__1838.doInvoke (hooke.clj:43)
clojure.lang.RestFn.applyTo (RestFn.java:137)
clojure.core$apply.invokeStatic (core.clj:665)
clojure.core$apply.invoke (core.clj:660)
cursive.leiningen.hooke$run_hooks.invokeStatic (hooke.clj:49)
cursive.leiningen.hooke$run_hooks.invoke (hooke.clj:48)
cursive.leiningen.hooke$prepare_for_hooks$fn__1843$fn__1844.doInvoke (hooke.clj:57)
clojure.lang.RestFn.applyTo (RestFn.java:137)
clojure.lang.AFunction$1.doInvoke (AFunction.java:31)
clojure.lang.RestFn.invoke (RestFn.java:408)
leiningen.core.eval$eval_in_project.invokeStatic (eval.clj:364)
leiningen.core.eval$eval_in_project.invoke (eval.clj:358)
clojure.lang.AFn.applyToHelper (AFn.java:160)
clojure.lang.AFn.applyTo (AFn.java:144)
clojure.core$apply.invokeStatic (core.clj:667)
clojure.core$apply.invoke (core.clj:660)
cursive.leiningen.task$eval_hook$fn__2415.doInvoke (task.clj:30)
clojure.lang.RestFn.applyTo (RestFn.java:142)
clojure.core$apply.invokeStatic (core.clj:667)
clojure.core$apply.invoke (core.clj:660)
cursive.leiningen.hooke$compose_hooks$fn__1838.doInvoke (hooke.clj:43)
clojure.lang.RestFn.applyTo (RestFn.java:137)
clojure.core$apply.invokeStatic (core.clj:665)
clojure.core$apply.invoke (core.clj:660)
cursive.leiningen.hooke$run_hooks.invokeStatic (hooke.clj:49)
cursive.leiningen.hooke$run_hooks.invoke (hooke.clj:48)
cursive.leiningen.hooke$prepare_for_hooks$fn__1843$fn__1844.doInvoke (hooke.clj:57)
clojure.lang.RestFn.applyTo (RestFn.java:137)
clojure.lang.AFunction$1.doInvoke (AFunction.java:31)
clojure.lang.RestFn.applyTo (RestFn.java:137)
clojure.core$apply.invokeStatic (core.clj:667)
clojure.core$apply.invoke (core.clj:660)
leiningen.repl$repl.invokeStatic (repl.clj:393)
leiningen.repl$repl.doInvoke (repl.clj:319)
clojure.lang.RestFn.invoke (RestFn.java:425)
clojure.lang.AFn.applyToHelper (AFn.java:156)
clojure.lang.RestFn.applyTo (RestFn.java:132)
clojure.lang.Var.applyTo (Var.java:705)
clojure.core$apply.invokeStatic (core.clj:667)
clojure.core$apply.invoke (core.clj:660)
leiningen.core.main$partial_task$fn__7356.doInvoke (main.clj:284)
clojure.lang.RestFn.applyTo (RestFn.java:139)
clojure.lang.AFunction$1.doInvoke (AFunction.java:31)
clojure.lang.RestFn.applyTo (RestFn.java:137)
clojure.core$apply.invokeStatic (core.clj:667)
clojure.core$apply.invoke (core.clj:660)
leiningen.core.main$apply_task.invokeStatic (main.clj:334)
leiningen.core.main$apply_task.invoke (main.clj:320)
clojure.lang.AFn.applyToHelper (AFn.java:160)
clojure.lang.AFn.applyTo (AFn.java:144)
clojure.core$apply.invokeStatic (core.clj:665)
clojure.core$apply.invoke (core.clj:660)
cursive.leiningen.hooke$run_hooks.invokeStatic (hooke.clj:49)
cursive.leiningen.hooke$run_hooks.invoke (hooke.clj:48)
cursive.leiningen.hooke$prepare_for_hooks$fn__1843$fn__1844.doInvoke (hooke.clj:57)
clojure.lang.RestFn.applyTo (RestFn.java:137)
clojure.lang.AFunction$1.doInvoke (AFunction.java:31)
clojure.lang.RestFn.invoke (RestFn.java:436)
leiningen.core.main$resolve_and_apply.invokeStatic (main.clj:343)
leiningen.core.main$resolve_and_apply.invoke (main.clj:336)
cursive.leiningen.task$task_details$fn__2441.invoke (task.clj:79)
cursive.leiningen.task$task_details.invokeStatic (task.clj:74)
cursive.leiningen.task$task_details.invoke (task.clj:43)
clojure.lang.Var.invoke (Var.java:388)
org.projectodd.shimdandy.impl.ClojureRuntimeShimImpl.invoke (ClojureRuntimeShimImpl.java:119)
org.projectodd.shimdandy.impl.ClojureRuntimeShimImpl.invoke (ClojureRuntimeShimImpl.java:112)
cursive.shim.ShimBootstrap$Shim.apply (ShimBootstrap.java:53)
cursive.repl.runner.LocalConfiguration$createLeinParameters$ret$1.invoke (ReplRunConfigurations.kt:463)
cursive.repl.runner.LocalConfiguration$createLeinParameters$ret$1.invoke (ReplRunConfigurations.kt:462)
cursive.shim.ShimProvider.withShim (Shim.kt:117)
cursive.repl.runner.LocalConfiguration.createLeinParameters (ReplRunConfigurations.kt:462)
cursive.repl.runner.LocalConfiguration.access$createLeinParameters (ReplRunConfigurations.kt:393)
cursive.repl.runner.LocalConfiguration$getRunProfileState$1.createDeferredParameters (ReplRunConfigurations.kt:432)
cursive.runner.DeferredCommandLineState.cacheDeferredParameters (Deferred.kt:72)
cursive.runner.AbstractDeferredRunner$execute$1.run (Deferred.kt:104)
com.intellij.openapi.progress.impl.CoreProgressManager.startTask (CoreProgressManager.java:450)
com.intellij.openapi.progress.impl.ProgressManagerImpl.startTask (ProgressManagerImpl.java:117)
com.intellij.openapi.progress.impl.CoreProgressManager.lambda$runProcessWithProgressAsync$5 (CoreProgressManager.java:510)
com.intellij.openapi.progress.impl.ProgressRunner.lambda$submit$3 (ProgressRunner.java:243)
com.intellij.openapi.progress.impl.CoreProgressManager.lambda$runProcess$2 (CoreProgressManager.java:183)
com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun (CoreProgressManager.java:705)
com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress (CoreProgressManager.java:647)
com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress (ProgressManagerImpl.java:63)
com.intellij.openapi.progress.impl.CoreProgressManager.runProcess (CoreProgressManager.java:170)
com.intellij.openapi.progress.impl.ProgressRunner.lambda$submit$4 (ProgressRunner.java:243)
java.util.concurrent.CompletableFuture$AsyncSupply.run (CompletableFuture.java:1700)
java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1128)
java.util.concurrent.ThreadPoolExecutor$Worker.run (ThreadPoolExecutor.java:628)
java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run (Executors.java:668)
java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run (Executors.java:665)
java.security.AccessController.doPrivileged (AccessController.java:-2)
java.util.concurrent.Executors$PrivilegedThreadFactory$1.run (Executors.java:665)
java.lang.Thread.run (Thread.java:829)
Thanks for that - the problem is in leiningen.javac/run-javac-subprocess
, which looks like this: https://github.com/technomancy/leiningen/blob/b257a5ac02af51e1b89332c667e57c9e01f98d7e/src/leiningen/javac.clj#L115-L134. As you can see, it’s some exception executing javac which calls main/exit
. Do you see any error output anywhere which might help? There’s a comment above that function discussing how the output is handled, but I must admit I don’t understand it. I think it’s saying that the output will just go to the standard process output, but since it looks like it runs javac in a separate process I don’t know where that will end up.
Looks like there’s not much information apart from the exit code available anyway: https://github.com/technomancy/leiningen/blob/b257a5ac02af51e1b89332c667e57c9e01f98d7e/leiningen-core/src/leiningen/core/eval.clj#L261-L266
Anyone have any tips or guides on using Cursive with ideavim plug in? Or an ideavimrc they would like to share, having a tough time making the workflow as seamless as I think it can be
There’s a couple of pages here: https://github.com/cursive-ide/cursive/wiki/IdeaVim-issues
It’s also been discussed on the mailing list from time to time: https://groups.google.com/g/cursive/search?q=ideavim
If you are trying to solve a mystery of why some keybindings aren't working knowing about Preferences -> Editor -> Vim
can help a ton. Certain bindings you might want the IDE to interpret vs the IdeaVim plugin.
Thanks all!