I've followed the Leinigen install instructions on Windows (with c:\leinigen\
in my path, which is where lein.bat
is). I'm now trying to use lein-cooper but this is giving me the following error:
java.io.IOException: Cannot run program "lein": CreateProcess error=2, The system cannot find the file specified
at java.lang.ProcessBuilder.start (:-1)
me.raynes.conch.low_level$proc.invokeStatic (low_level.clj:33)
me.raynes.conch.low_level$proc.doInvoke (low_level.clj:7)
clojure.lang.RestFn.applyTo (RestFn.java:137)
clojure.core$apply.invokeStatic (core.clj:646)
clojure.core$apply.invoke (core.clj:641)
leiningen.cooper$get_procs_from_project$iter__657__661$fn__662.invoke (cooper.clj:61)
clojure.lang.LazySeq.sval (LazySeq.java:40)
clojure.lang.LazySeq.seq (LazySeq.java:49)
clojure.lang.RT.seq (RT.java:521)
clojure.core$seq__4357.invokeStatic (core.clj:137)
clojure.core$dorun.invokeStatic (core.clj:3024)
clojure.core$doall.invokeStatic (core.clj:3039)
clojure.core$doall.invoke (core.clj:3039)
leiningen.cooper$get_procs_from_project.invokeStatic (cooper.clj:59)
leiningen.cooper$get_procs_from_project.invoke (cooper.clj:56)
leiningen.cooper$cooper.invokeStatic (cooper.clj:145)
leiningen.cooper$cooper.doInvoke (cooper.clj:111)
clojure.lang.RestFn.invoke (RestFn.java:410)
clojure.lang.Var.invoke (Var.java:379)
clojure.lang.AFn.applyToHelper (AFn.java:154)
clojure.lang.Var.applyTo (Var.java:700)
clojure.core$apply.invokeStatic (core.clj:648)
clojure.core$apply.invoke (core.clj:641)
leiningen.core.main$partial_task$fn__4667.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:29)
clojure.lang.RestFn.applyTo (RestFn.java:137)
clojure.core$apply.invokeStatic (core.clj:648)
clojure.core$apply.invoke (core.clj:641)
leiningen.core.main$apply_task.invokeStatic (main.clj:334)
leiningen.core.main$apply_task.invoke (main.clj:320)
leiningen.core.main$resolve_and_apply.invokeStatic (main.clj:340)
leiningen.core.main$resolve_and_apply.invoke (main.clj:336)
leiningen.core.main$_main$fn__4734.invoke (main.clj:420)
leiningen.core.main$_main.invokeStatic (main.clj:411)
leiningen.core.main$_main.doInvoke (main.clj:408)
clojure.lang.RestFn.invoke (RestFn.java:408)
clojure.lang.Var.invoke (Var.java:379)
clojure.lang.AFn.applyToHelper (AFn.java:154)
clojure.lang.Var.applyTo (Var.java:700)
clojure.core$apply.invokeStatic (core.clj:646)
clojure.main$main_opt.invokeStatic (main.clj:314)
clojure.main$main_opt.invoke (main.clj:310)
clojure.main$main.invokeStatic (main.clj:421)
clojure.main$main.doInvoke (main.clj:384)
clojure.lang.RestFn.invoke (RestFn.java:436)
clojure.lang.Var.invoke (Var.java:388)
clojure.lang.AFn.applyToHelper (AFn.java:160)
clojure.lang.Var.applyTo (Var.java:700)
clojure.main.main (main.java:37)
Caused by: java.io.IOException: CreateProcess error=2, The system cannot find the file specified
at java.lang.ProcessImpl.create (:-2)
java.lang.ProcessImpl.<init> (:-1)
java.lang.ProcessImpl.start (:-1)
java.lang.ProcessBuilder.start (:-1)
me.raynes.conch.low_level$proc.invokeStatic (low_level.clj:33)
me.raynes.conch.low_level$proc.doInvoke (low_level.clj:7)
clojure.lang.RestFn.applyTo (RestFn.java:137)
clojure.core$apply.invokeStatic (core.clj:646)
clojure.core$apply.invoke (core.clj:641)
leiningen.cooper$get_procs_from_project$iter__657__661$fn__662.invoke (cooper.clj:61)
clojure.lang.LazySeq.sval (LazySeq.java:40)
clojure.lang.LazySeq.seq (LazySeq.java:49)
clojure.lang.RT.seq (RT.java:521)
clojure.core$seq__4357.invokeStatic (core.clj:137)
clojure.core$dorun.invokeStatic (core.clj:3024)
clojure.core$doall.invokeStatic (core.clj:3039)
clojure.core$doall.invoke (core.clj:3039)
leiningen.cooper$get_procs_from_project.invokeStatic (cooper.clj:59)
leiningen.cooper$get_procs_from_project.invoke (cooper.clj:56)
leiningen.cooper$cooper.invokeStatic (cooper.clj:145)
leiningen.cooper$cooper.doInvoke (cooper.clj:111)
clojure.lang.RestFn.invoke (RestFn.java:410)
clojure.lang.Var.invoke (Var.java:379)
clojure.lang.AFn.applyToHelper (AFn.java:154)
clojure.lang.Var.applyTo (Var.java:700)
clojure.core$apply.invokeStatic (core.clj:648)
clojure.core$apply.invoke (core.clj:641)
leiningen.core.main$partial_task$fn__4667.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:29)
clojure.lang.RestFn.applyTo (RestFn.java:137)
clojure.core$apply.invokeStatic (core.clj:648)
clojure.core$apply.invoke (core.clj:641)
leiningen.core.main$apply_task.invokeStatic (main.clj:334)
leiningen.core.main$apply_task.invoke (main.clj:320)
leiningen.core.main$resolve_and_apply.invokeStatic (main.clj:340)
leiningen.core.main$resolve_and_apply.invoke (main.clj:336)
leiningen.core.main$_main$fn__4734.invoke (main.clj:420)
leiningen.core.main$_main.invokeStatic (main.clj:411)
leiningen.core.main$_main.doInvoke (main.clj:408)
clojure.lang.RestFn.invoke (RestFn.java:408)
clojure.lang.Var.invoke (Var.java:379)
clojure.lang.AFn.applyToHelper (AFn.java:154)
clojure.lang.Var.applyTo (Var.java:700)
clojure.core$apply.invokeStatic (core.clj:646)
clojure.main$main_opt.invokeStatic (main.clj:314)
clojure.main$main_opt.invoke (main.clj:310)
clojure.main$main.invokeStatic (main.clj:421)
clojure.main$main.doInvoke (main.clj:384)
clojure.lang.RestFn.invoke (RestFn.java:436)
clojure.lang.Var.invoke (Var.java:388)
clojure.lang.AFn.applyToHelper (AFn.java:160)
clojure.lang.Var.applyTo (Var.java:700)
clojure.main.main (main.java:37)
I get the above when I run lein cooper
from a Powershell prompt. I've got an entire project where this does work on my colleague's OSX, but on Windows tit doesn't work.
I've created a smaller repro using the following project file:
(defproject cooper.repro "0.0.1"
:dependencies [[org.clojure/clojure "1.9.0"]
[org.clojure/clojurescript "1.9.946"]]
:plugins [[lein-cljsbuild "1.1.7"]
[lein-cooper "1.2.2"]
[lein-figwheel "0.5.14"]]
:source-paths ["src/"]
:cooper {"cljs" ["lein" "figwheel"]}
:figwheel {:http-server-root "./" :server-port 3000}
:cljsbuild {:builds [{
:id "dev"
:source-paths ["src"]
:figwheel true
:compiler {
:main hello-world
:asset-path "js/out"
:output-to "resources/public/exmple.js"
:output-dir "resources/public/out"
}}]}
)
My src
folder contains just a hello-world clojurescript file with only a namespace. If I run just lein figwheel
from the command line instead it does work as expected (even though it doesn't do anything interesting).
At first I thought it was a path-related issue so I rebooted my machine but that didn't help.
Google search gives zero useful results.
Any tips on getting this fixed? Or should I file a bug (and if so: where? for figwheel, or for lein-cooper?).