A clj-based uberjarrer (based on healthfinch/depstar, with enhancements)
Branch: master
Clone or download
Pull request Compare This branch is 15 commits ahead of healthfinch:master.
seancorfield Merge pull request #2 from eval/patch-1
Use `clojure` in examples as no repl is involved
Latest commit bf4b76d Feb 13, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
src/hf/depstar Fix healthfinch#10 Oct 25, 2018
.gitignore Beef up the pom Oct 24, 2018
EPL-2.0.html initial commit Mar 11, 2018
README.md Use `clojure` in examples as no repl is involved Feb 12, 2019
deps.edn initial commit Mar 11, 2018
depstar_logo.png Changed logo per request. Mar 12, 2018
pom.xml Release 0.1.5@905f79fd1641b39f9c94901bdddd923cb1945f94 Oct 25, 2018

README.md

depstar

a clj-based uberjarrer (forked from healthfinch/depstar and enhanced)

Usage

Install this tool to an alias in $PROJECT/deps.edn or $HOME/.clojure/deps.edn:

{
  :aliases {:depstar
              {:extra-deps
                 {seancorfield/depstar {:mvn/version "0.1.5"}}}}
}

Create an uberjar by invoking depstar with the desired jar name:

clojure -A:depstar -m hf.depstar.uberjar MyProject.jar

Create a (library) jar by invoking depstar with the desired jar name:

clojure -A:depstar -m hf.depstar.jar MyLib.jar

depstar uses the classpath computed by clojure. For example, add web assets into an uberjar by including an alias in your deps.edn:

{:paths ["src"]
 :aliases {:webassets {:extra-paths ["public-html"]}}}

Then invoke depstar with the chosen aliases:

clojure -A:depstar:webassets -m hf.depstar.uberjar MyProject.jar

Note that depstar does no AOT compilation and does not add a manifest to the jar file. You can run the uberjar as follows (assuming project.core is your main namespace):

java -cp MyProject.jar clojure.main -m project.core

License

The use and distribution terms for this software are covered by the Eclipse Public License 2.0