Why doesn't b/compile-cljdeduce :src-dirs from the basis? 🤔
could b/javac be handled in the same way as b/compile-clj?
Generally Java source isn't on the classpath and thus isn't on :paths, so no
seems like it could
there might be some reasons not to do it (classes dir with copied resources in :paths) but could be a reasonable default
I logged this as https://clojure.atlassian.net/browse/TBUILD-27
Thanks, that was a quick fix! The intent extends to other features requiring :src-dirs like b/write-pom . What do you think?
that one is a bit trickier as it separates srcs from resources, which are often lumped together in :paths
Prompted by a question from @jr0cket I have updated the build-clj README with examples of running basic tools.build tasks directly from the CLI, without needing a build.clj file: https://github.com/seancorfield/build-clj#standalone-cli-usage (so build-clj can be used in an alias across any projects, even if they haven't migrated to a separate build.clj file yet).
you could add an alias for the long ns name in your deps.edn alias:
:ns-aliases {do org.corfield.build} and then the commands would be like
clojure -T:build do/run-testsYeah, I'll leave that up to John when (if) he updates :project/jar and :project/uberjar to no longer use depstar 🙂
Updates to those aliases coming soon, I promise. Thanks for these examples, it make it much clearer.
https://clojurians.slack.com/archives/C06MAR553/p1645221678611009