I'm having trouble running an edge repl, I always get this error:
Syntax error (FileNotFoundException) compiling at (dev_extras.clj:1:1).
Could not locate clojure/tools/deps/alpha/repl__init.class, clojure/tools/deps/alpha/repl.clj or clojure/tools/deps/alpha/repl.cljc on classpath.
I notice that edge uses a fork of tools.deps.alpha
, so I've checked that i'm not pulling in the clojure version of it from anywhere. I've also tried adding the same dependency:
org.clojure/tools.deps.alpha {:git/url "<https://github.com/SevereOverfl0w/tools.deps.alpha.git>"
:sha "a4173975e22e5a41cc3be85270729ed102be3917"
:exclusions [org.slf4j/slf4j-nop]}
Even with that in there, I still get the same error. Any ideas?Does this happen from the cli? What if you -Sforce?
let me try
no, it doesn't seem to happen from the cli (although i get an unrelated missing class in jetty there)
i'm not sure how i would run -Sforce
i'm using cursive
for some reason the classpath the repl runs with has the wrong version of tools.deps.alpha
any ideas on how to import an edge project into cursive correctly? i always end up with missing deps
the best way i've found is to import the application's deps.edn
, and to check the dev
, dev/build
and build
aliases in the clojure deps tool window
I think it's cursive that adds tools.deps.alpha to the classpath
i don't know how to avoid this, is there a way to run edge without using the fork?
ok i've found a workaround in cursive. it seems that cursive adds tools.deps.alpha
from the :deps
alias, which you can override by adding an empty :deps
alias to your deps.edn
. You could probably put this in your ~/.clojure/deps.edn
to avoid having it in the project, but i haven't tried it.
Sounds like there's a bug report for Colin there
yeah i've posted in #cursive, will see if anything comes back and raise a ticket if not