practicalli / practicalli/clojure
Deploying Clojure project to Clojars
Nobody has claimed this yet.
- Dominant language
- Makefile
- Stars
- 117
- Forks
- 36
- PR merge metrics
- No merged PRs in 30d
Description
https://github.com/clojars/clojars-web/wiki/Tutorial
Depstar for Clojure CLI projects
https://juxt.pro/blog/pack-maven
Write a tutorial for CLI projects?
https://clojureverse.org/t/please-how-do-you-configure-gpg-and-clojars/606
To AOT or not AOT
Difference between jar and uberjar, what to publish and what to deploy. (deploy uberjar and publish jar)
Short answer: deploy uberjars, publish jarsWhen deploying to a server / container, the uberjar has everything it needs, except for the Java runtime. So its possible to run the uberjar just using a java command (essentially what the Clojure CLI tool wraps).Clojars are a collection of library dependencies, each of which can be added to another project. When adding a library to a project, any dependencies the library contains will be downloaded when running the project. Therefore its is encouraged that libraries have no more dependencies that really needed.
Uberjars shouldnt be published to Clojars as this would be very inefficient and a potential cause of dependency conflicts.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the linked Clojars wiki tutorial, Depstar article, and ClojureVerse discussion. Define the tutorial structure for Clojure CLI projects and cover GPG configuration, AOT, jars versus uberjars, and what to publish or deploy; done means these deployment choices are explained clearly for newcomers.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- clojure
- Domain
- documentation
- Issue type
- Documentation
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100