Duuno if this has been reported already but stub generation doesn't work for me anymore:
Syntax error (FileNotFoundException) compiling at (C:\Users\Niklas\AppData\Local\Temp\create-stub14382613955835016522.clj:1:1).
Could not locate cursive/stubs/metadata/clojure__init.class, cursive/stubs/metadata/clojure.clj or cursive/stubs/metadata/clojure.cljc on classpath.
Can you try this please? Help->Diagnostic Tools->Debug Log Settings…, add #cursive.stubs
there, then reproduce the problem and send me the logs to <mailto:cursive@cursive-ide.com|cursive@cursive-ide.com>?
I'll try that
IntelliJ Ultimate 2020.2, Cursive 1.9.4-eap3-2020.2
Is there a way to make alternative repls like REBL or Reveal work with the nREPL option from Cursive > run configurations? I can make it work with clojure.main from the run config, and also by starting the REPL from the shell and then connecting to it from Cursive. But both of these have some drawbacks for running tests / debugging.
@stijn I haven’t tried this, but I’ll have a go at setting it up in the next day or so.
The author of reveal is a Cursive user, so I imagine it can be made to work well there (paging @vlaaad)
Ah I didn't know that. Here's some more documentation on what I tried: Solution 1 (works) add alias
:reveal-nrepl {:extra-deps {vlaaad/reveal {:mvn/version "0.1.0-ea30"}
nrepl/nrepl {:mvn/version "0.7.0"}}
:main-opts ["-m" "nrepl.cmdline" "--middleware" "[vlaaad.reveal.nrepl/middleware]"]}
and start from cli
clj -A:reveal-nrepl
and connect Cursive remote nREPL to that process
Solution 2 (works)
define alias
:reveal {:extra-deps {vlaaad/reveal {:mvn/version "0.1.0-ea30"}}
:main-opts ["-m" "vlaaad.reveal" "repl"]}
and from Cursive, create run configuration as follows (see screenshot)
• clojure.main
• add reveal
to aliasesOk, but you’d like to start the process using a local REPL, install the middleware and be able to connect to it?
Now what doesn't work:
• nREPL
• add reveal-nrepl
alias
that's right
because, the clojure.main repl doesn't have run tests
integration, and the remote repl doesn't allow debugging
Have you tried setting the middleware using .nrepl.edn
? https://nrepl.org/nrepl/0.8/usage/server.html#server-configuration
Actually, you can debug the remote REPL. One sec…
I didn't try that, let me see
For remote debugging, see: https://groups.google.com/g/cursive/c/iTri7vvXViA/m/w_HXi5mlDAAJ
I should still document that 😕
I’m off to bed now, but let me know if it works.
OK, the nrepl config works!
just adding
:middleware [vlaaad.reveal.nrepl/middleware]
to the config and ensuring to add an alias that includes the dep works
thanks!Great!
Yes, reveal has nrepl middleware 🙂
Sorry vlaaad, I pinged you prematurely there 🙂
np 🙂
I never had a need for test integration provided by nrepl, tests can be run from the repl ¯\(ツ)/¯
I think stijn means that Cursive’s test integration requires nREPL and doesn’t work over a socket/clojure.main connection.
It could work over a socket connection but I haven’t fixed that yet.
yeah, that's what I meant. Anyway, Reveal looks awesome @vlaaad 🙂
I use nrebl middleware, which works good most of the time; https://github.com/RickMoynihan/nrebl.middleware