My workflow has generally changed to one based on clj and tools.deps wherever possible. I continue to use lein for uberjarring, so I wrote this tool to jar up the classpath.
depstar has no dependencies, and uses the JVM classpath instead of reading deps.edn directly.
It handles merging multiple data_readers.clj & Java service loader manifests. It does not handle AOTing nor specifying a main class. (Though the README has a suggestion about how to include web assets or AOT -- tldr specify :extra-paths in deps.edn)
https://github.com/healthfinch/depstarInclude it in deps.edn (either in your project or your $HOME/.clojure/deps.edn):
:aliases {:depstar
{:extra-deps
{com.healthfinch/depstar {:git/url "https://github.com/healthfinch/depstar.git"
:sha "4aa7b35189693feebc7d7e4a180b8af0326c9164"}}}}