- clj is a command line tool for managing Clojure projects and dependencies without requiring Leiningen. It uses a deps.edn file to specify dependencies.
- Problems with current dependency approaches include breaking changes, namespace conflicts from multiple versions, and lack of support for Git dependencies.
- deps.edn allows specifying local directories and Git repositories as dependencies, making multi-repo development easier without artifact deployment.
- clj has advantages over Leiningen for new projects but Leiningen is still useful for publishing libraries to Clojars. Migrating existing projects to clj may be worth considering.