This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2019-02-12
Channels
- # adventofcode (6)
- # beginners (148)
- # boot (5)
- # calva (1)
- # cider (10)
- # cljdoc (10)
- # cljs-dev (8)
- # cljsrn (10)
- # clojure (180)
- # clojure-dev (24)
- # clojure-europe (2)
- # clojure-finland (1)
- # clojure-italy (32)
- # clojure-losangeles (1)
- # clojure-nl (40)
- # clojure-spec (10)
- # clojure-uk (44)
- # clojured (4)
- # clojurescript (88)
- # community-development (33)
- # core-async (7)
- # cursive (19)
- # datomic (98)
- # duct (3)
- # events (1)
- # figwheel-main (10)
- # fulcro (62)
- # leiningen (23)
- # luminus (18)
- # off-topic (19)
- # pedestal (6)
- # re-frame (46)
- # reagent (21)
- # ring (17)
- # ring-swagger (3)
- # shadow-cljs (94)
- # slack-help (9)
- # spacemacs (14)
- # sql (1)
- # testing (4)
- # tools-deps (14)
Instead of giving the debug config the alias for the runner (with -m app.main), I just give it the aliases that load all deps, and in the repl inside Cursive I trigger mount by hand with a (start). That works.
@mattmorten Yes, I definitely want to make that work, and hopefully soon. I’ve been put off implementing it by the fearsome complexity of rewriting CLJC ns
forms with reader conditionals.
@alexmiller @rodsenra Correct, Cursive doesn’t do anything with brew, except look for clojure
where brew installs it by default.
@rodsenra This is a bug - Cursive has a problem in the way it assembles the classpath, it’s actually coming out as <big Java invocation> <flags, classpath etc> clojure.main -i <REPL init file> "-m red-robin.main"
Note the quotes around the last two args - they’re not being split correctly and are being added as a single string, so IntelliJ duly quotes it when it builds the classpath. So Clojure is trying to look for a file called -m red-robin.main
, which it obviously can’t find.
The problem is in your deps file: :main-opts ["-m red-robin.main"]
should be :main-opts ["-m" "red-robin.main"]
I guess it works in the command line because of some accident of how the escaping works when the command line is assembled. IntelliJ is strict about quoting, but I guess clj
is not.
it’s due to how the opts get stored into a file and read back by bash
which is actually a problem and the thing that causes options with spaces in them to NOT work the way they should
so working accidentally (and likely to be broken by future changes)
Feature idea: intellij-repl-api
A lib that you require on REPL, then you can access intellij API's from REPL
Example (idea/refactor-rename {:src-token :my/keyword :dest-token}) ;; will open the popup and i will click in "Ro Refactor"
@cfleming and @alexmiller thanks a lot for the help. Splitting main-opts did the trick 👏 Sorry for the noise.