depstar
is getting an overhaul! I am planning to expose the pom.xml
handling, the AOT compilation, and the JAR building as three separate tasks that can be executed (via -X
) independently — see https://github.com/seancorfield/depstar/issues/82 for details and current status. In addition, a new :target-dir
option has been added so you can tell depstar
to sync from the current pom.xml
to a target version, to compile your code into a classes
folder inside that target, and to generate the JAR file there as well. This will be more in keeping with how many other build-related tools work. This is partially spurred by the brand new multi-exec functionality mentioned above but also by the tools.build
information that Alex provided at clojureD.
In particular, this will allow folks to keep a stable pom.xml
under version control and have depstar
generate it to a target folder with an updated version etc without changing the original file.
Note: depstar
still generates the JAR file directly, rather than copying all the files into a target folder and then building a JAR — this is mainly for performance!
The -X
targets are not exposed yet — there will be a new hf.depstar.api
namespace containing them — but this is intended to be a stepping stone toward integration with tools.build
so that you will be able to mix’n’match tasks between depstar
and the built-in tools.build
tasks.