| --- |
| layout: default |
| title: How to build with Maven |
| permalink: /developer-manual/how-to-build-with-maven/ |
| --- |
| |
| # How to Build with Maven |
| |
| This guide describes the basics of compiling Baremaps from source. In order to run Apache Baremaps, you first need to install Java 17 or a later version. |
| [SDKMAN](https://sdkman.io/){:target="_blank"} provides a convenient Command Line Interface (CLI) to install and upgrade Java. We also suggest you use the most recent version of Maven |
| to compile [(at least 3.x.x)](https://maven.apache.org/download.cgi){:target="_blank"}. |
| |
| ### Linux or OSX |
| |
| To start you can run the command `mvn clean package` from the root folder of the Baremaps project. Upon successful |
| compilation you should see something similar to the following output in your terminal. |
| ``` |
| [INFO] Building zip: /path-to-project/baremaps/baremaps-cli/target/baremaps.zip |
| [INFO] ------------------------------------------------------------------------ |
| [INFO] Reactor Summary for baremaps 0.7.1-SNAPSHOT: |
| [INFO] |
| [INFO] baremaps ........................................... SUCCESS [ 4.172 s] |
| [INFO] baremaps-core ...................................... SUCCESS [ 59.018 s] |
| [INFO] baremaps-benchmark ................................. SUCCESS [ 1.775 s] |
| [INFO] baremaps-ogcapi .................................... SUCCESS [ 9.796 s] |
| [INFO] baremaps-server .................................... SUCCESS [ 0.787 s] |
| [INFO] baremaps-cli ....................................... SUCCESS [ 20.687 s] |
| [INFO] ------------------------------------------------------------------------ |
| ``` |
| |
| It is important to note the first line in the output above that notes where the location of the `baremaps.zip` file resides. |
| Referencing the location of the `baremaps.zip` file, you can run the following to unzip |
| and place Baremaps into your `PATH` |
| ``` |
| $ unzip /path-to-project/baremaps/baremaps-cli/target/baremaps.zip |
| $ export PATH=$PATH:`pwd`/baremaps/bin |
| ``` |
| |
| Executing the `baremaps` command should now result in an output similar to the following: |
| |
| ``` |
| Usage: baremaps [COMMAND] |
| A toolkit for producing vector tiles. |
| Commands: |
| import Import OpenStreetMap data in the Postgresql database. |
| update Update OpenStreetMap data in the Postgresql database. |
| export Export vector tiles from the Postgresql database. |
| serve Serve vector tiles from the the Postgresql database. |
| ``` |
| |
| From here, head into [Installing PostGIS](/getting-started/installing-postgis/) if you plan to work with vector tiles. |
| |
| If you want to work on [Geocoding](/examples/geocoding/) or |
| [IP to location](/examples/ip-to-location/), head directly into the related examples. |
| |
| ### Windows |
| |
| If you are using Windows, you will need to use `mvnw.cmd` instead of `./mvnw` and use set instead of export to set the environment variable. |