tools-deps

Drew Verlee 2025-03-21T17:06:48.910759Z

what would be the difference between -X and -T in clj -T:build uber in https://clojure.org/guides/tools_build#_compiled_uberjar_application_build?

dpsutton 2025-03-21T17:12:35.431299Z

> Builds are designed to be easily executed as a project “tool” in the Clojure CLI (with -T). In the Clojure CLI, “tools” are programs that provide functionality and do not use your project deps or classpath. Tools executed with -T:an-alias remove all project deps and paths, add "." as a path, and include any other deps or paths as defined in :an-alias.

dpsutton 2025-03-21T17:12:37.810029Z

https://clojure.org/guides/tools_build

Drew Verlee 2025-03-21T17:18:39.001729Z

thanks dpsutton!

Drew Verlee 2025-03-21T17:21:20.000679Z

so if i call it with -X, then it's going to use "all the project deps" to do what exactly? create the env that builds the jar, which is wasteful? e.g we don't need ring middlware to build the jar?

Drew Verlee 2025-03-21T17:29:24.960009Z

i should read the docs... the whole thing is right there lol.

dpsutton 2025-03-21T17:59:18.333109Z

classpath is kinda innocuous if you don’t use it. But better to only have stuff you actually need. And you don’t want conflicts and weird resolution about your project when you are building it

🙏 1