forked from LibreGaming/matchbot
Document the build system in CONTRIBUTING.md
This commit adds documentation in the CONTRIBUTING.md file about how to generate POM, JAR and uberjar files using matchbot's build system. Signed-off-by: Sebastian Crane <seabass-labrax@gmx.com>
This commit is contained in:
parent
bfd321cdb3
commit
93306d6d34
|
@ -40,3 +40,22 @@ For example:
|
|||
> `;; SPDX-FileCopyrightText: 2022 Joe Bloggs <joe@example.com>`
|
||||
|
||||
If the copyright to your contributions is held by your employer, put your employer's name in brackets after your own name.
|
||||
|
||||
## Build system
|
||||
|
||||
### Building a POM file
|
||||
|
||||
The POM file lists the dependencies needed to run `matchbot` as well as some additional information that can help people learn more about `matchbot`.
|
||||
To generate a POM file, run `clojure -T:build pom`; you should find the generated `POM.xml` file in the `target/` directory.
|
||||
|
||||
### Building a JAR file
|
||||
|
||||
A JAR file contains all the source code of `matchbot` in a form that the JVM can load and pass to the Clojure compiler to run.
|
||||
To generate a JAR file, run `clojure -T:build jar`; again, you should find the JAR file called something like `matchbot-x.x.x.jar` in the `target/` directory.
|
||||
|
||||
### Building an uberjar
|
||||
|
||||
An uberjar is much like a normal JAR file, but comes with all the dependencies of `matchbot` bundled in it.
|
||||
This means that it can run directly on the JVM without Clojure being installed (it contains a copy of the Clojure compiler itself).
|
||||
To generate an uberjar, run `clojure -T:build uber`; you should find the uberjar called something like `matchbot-x.x.x-standalone.jar` in the `target/` directory.
|
||||
Please note that if you distribute an uberjar, you must not only comply with the licence of `matchbot`, but also the licences of all `matchbot`'s dependencies, both transitive and intransitive.
|
||||
|
|
Loading…
Reference in New Issue