This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
- # bangalore-clj (1)
- # beginners (50)
- # boot (72)
- # cider (53)
- # cljs-dev (303)
- # cljsrn (2)
- # clojure (403)
- # clojure-conj (3)
- # clojure-dev (7)
- # clojure-italy (18)
- # clojure-russia (129)
- # clojure-sg (1)
- # clojure-spec (44)
- # clojure-uk (25)
- # clojurescript (112)
- # core-async (4)
- # core-typed (3)
- # cursive (23)
- # datomic (114)
- # defnpodcast (1)
- # emacs (1)
- # figwheel (2)
- # graphql (18)
- # hoplon (110)
- # instaparse (6)
- # jobs (3)
- # jobs-discuss (10)
- # leiningen (5)
- # luminus (1)
- # lumo (151)
- # off-topic (22)
- # om (3)
- # om-next (3)
- # onyx (4)
- # parinfer (1)
- # pedestal (8)
- # precept (51)
- # re-frame (19)
- # reagent (3)
- # ring (1)
- # ring-swagger (5)
- # spacemacs (21)
- # sql (25)
- # test-check (2)
- # uncomplicate (8)
- # unrepl (33)
- # untangled (20)
- # yada (14)
how do you have java files compiled with boot? (equivalent of having :java-source-paths in lein)
however can't figure out how to add it to the cider-jack-in boot thing (total newbie with boot)
imo, you should create a
dev task in boot, and use that as the default from cider. As long as you're on 0.15 cider, it works perfectly. If you're stuck on 0.14, you are best off tweaking it everywher.e
dev task inside build.boot then 🙂, which can start as
(comp (javac) (repl) but will likely grow
I didnt set
cider-boot-parameters yet, I was hoping it would work with something on the boot side. It works without any customization with lein for instance
it works in lein without customization because everything hooks onto the
lein repl and runs it's own thing first.
@mpenet https://github.com/juxt/edge/commit/125b27930ae7c1476639e9dd33d9a767bd4211b6 courtesy of @richiardiandrea
Oh really? :thinking_face: I thought that cider-boot-parameters was on the list of valid variables
the local variables list in foo.bar.baz contains values that may be unsafe (*) .... cider-boot-parameters "dev" eval: ...
isnt' there a way to inject a middleware that does the javac task for
boot/repl for instance?
well I guess it doesn't play nice with other users in the team (damn non-emacs converts). Even tho, it's just "javac" in that case
You could do something like
(ns-unmap 'repl) then:
(deftask repl [& args ;; NB: I don't think this works necessarily ] (comp (javac) (apply boot.built-in.tasks/repl args))))
You can probably do something like
(defn repl ^:boot-task) but I'm not sure what exactly
deftask does to get it registered.
^^ Apparently this is a thing
(deftask print-args  (prn *args*) identity) (boot (print-args "1" "2" "3"))
(ns-unmap *ns* 'repl) (deftask repl  (comp (javac) (apply boot.built-in.tasks/repl *args*))))
Classpath conflict: org.clojure/clojure version 1.9.0-alpha14 already loaded, NOT loading version 1.2.0 Classpath conflict: org.tcrawley/dynapath version 0.2.5 already loaded, ALSO loading version 0.2.4 Boot.main Boot.java: 258 ... boot.App.main App.java: 491 boot.App.runBoot App.java: 399 org.projectodd.shimdandy.impl.ClojureRuntimeShimImpl.invoke ClojureRuntimeShimImpl.java: 150 org.projectodd.shimdandy.impl.ClojureRuntimeShimImpl.invoke ClojureRuntimeShimImpl.java: 159 ... boot.main/-main main.clj: 206 boot.main/-main/fn main.clj: 206 ... java.lang.Class.forName Class.java: 348 java.lang.Class.forName0 Class.java java.lang.ClassLoader.loadClass ClassLoader.java: 357 ... java.lang.ClassLoader.loadClass ClassLoader.java: 424 ... java.net.URLClassLoader.findClass URLClassLoader.java: 381 java.lang.ClassNotFoundException: boot.built-in.tasks clojure.lang.ExceptionInfo: boot.built-in.tasks file: "/tmp/boot.user2646530383977609129.clj" line: 25
^^ this runs bluh then starts the repl.
(ns-unmap *ns* 'repl) (deftask bluh  (prn *args*) identity) (deftask repl  (comp (bluh "--" 1 2 3) (apply boot.task.built-in/repl *args*))))
(ns-unmap *ns* 'repl) (deftask repl  (comp (javac) (apply boot.task.built-in/repl *args*)))
error in process sentinel: Could not start nREPL server: Classpath conflict: org.clojure/clojure version 1.9.0-alpha14 already loaded, NOT loading version 1.2.0 Classpath conflict: org.tcrawley/dynapath version 0.2.5 already loaded, ALSO loading version 0.2.4 java.lang.Thread.run Thread.java: 745 java.util.concurrent.ThreadPoolExecutor$Worker.run ThreadPoolExecutor.java: 617 java.util.concurrent.ThreadPoolExecutor.runWorker ThreadPoolExecutor.java: 1142 java.util.concurrent.FutureTask.run FutureTask.java: 266 ... clojure.core/binding-conveyor-fn/fn core.clj: 2020 boot.core/boot/fn core.clj: 1030 ... boot.core/construct-tasks core.clj: 988 java.lang.IllegalArgumentException: Unknown option: "-s" Unknown option: "-H" clojure.lang.ExceptionInfo: Unknown option: "-s" Unknown option: "-H"
ah, that's because I didn't test with options. Looks like boot looks for anything that starts like
- and decides that's a flag, not positional parameter.
isn't it possible to inject a fn that does the javac before (repl) via boot.repl/default-middleware? same way cider does it actually
@mpenet I think cider-boot-parameters will be marked as safe, and that will be the best way to solve this.
edge is a little enhanced over what I'd consider standard, particularly the part where it automatically runs the system. But yeah, it's not bad.
Can someone remind me how to write out a pom.xml to my file system.
boot pom doesn’t seem to actually write to disk.