I came across this while porting our lein-based projects to deps.edn. We ship our product as uberjar and uberwar, with leiningen.
Nothing fancy, this is the configuration in use:
:uberwar {:aot :all
:omit-source true
:handler myapp.handler/app-routes
:init myapp.handler/start-service
:destroy myapp.handler/stop-service
:name "myapp.war"}