I imported a shared (deps-based, via :local/root
) library as a module into an existsing deps-project. It seems that the paths are not resolved correctly for that module if the paths are defined under a alias, e.g.
{:aliases {:backend {:extra-paths ["src/clj"]}}}
If I put all the paths into top :paths
it works correctly.
{:paths ["src/clj" "resources"]}
How can I work with deps-modules with paths under aliases?I'm having some trouble refreshing deps-based projects using Cursive - the error I get is 'Command failed when executing /usr/local/bin/clojure'. Going in to the settings, I can see it's pointing to that path but it seems like it can't correctly pick up the clojure executable there as it also has 'Command failed' just under it rather than the clojure version. I can run clojure using the terminal - what am I missing here?
This should do it: https://cursive-ide.com/userguide/deps.html#working-with-aliases
Do you have anything in your log saying Output from <command>
where command is probably /usr/local/bin/clojure
? Help->Show log in Finder/Explorer/whatever
#cursive.deps.DepsSettings - Output from /usr/local/bin/clojure -Sdescribe: Couldn't find 'java'. Please set JAVA_HOME.
Oddly, I can now use Clojure directly and it appears to work OK
Do you mean use tools.deps directly?
No, I switched to that temporarily, which worked. I mean that I can select the 'Use CLI tools' radio button and it now doesn't display the error
That is super weird, but I’ll take it 🙂
I did a bunch of different things (installed tools.deps, installed lein via apt, restarted IntelliJ), so not sure which one was the winner. At least it works! 😄
Can’t figure out how to do that. In the Deps
section I can see both modules, but only 1 set of aliases, which are from the main project. I don’t know how to enable :dev
profile just for the added module.
Deps
looks like (`common`) is the module I imported, need to apply it’s :dev
alias.
setting the paths to top-level resolved the issue:
this fails:
with this:
and the actual the code is under src/clj.
resolved: removing the src
from sources makes it work. so, having src
at top-level and src/clj
under alias made it to fail.