Building deegree3 - deegree/deegree3 GitHub Wiki
This page describes how to build deegree3 from the command line.
System requirements
- Compatible JDK 17 (OpenJDK 17)
- Apache Maven 3.9.7 or higher
- Git 2.40.1 or higher
Cloning the deegree3 repository
First, you will need to clone the deegree3 repository. On the command line, change to a suitable directory and enter:
git clone git://github.com/deegree/deegree3.git
You'll probably want to fork the deegree3 repository and clone your fork instead (just replace the deegree part with your GitHub username).
Choosing the version to build
Now, change to the deegree3
directory and check out the version that you want to build, e.g.
git checkout main
Hint: Use git checkout 3.5-main
to get the latest 3.5.x version using Java 11. Use git checkout 3.4-main
to get the latest 3.4.x version using Java 8. Or use git tag
to find out all tags (versions) that can be checked out. The following command shows the list of all tags:
git tag | grep "^deegree-[0-9].*\|^[0-9]." | sort
Pick a tag and enter:
git checkout tags/deegree-3.5.0
Invoking Maven
Invoke Maven to start the build process:
mvn install
This will build deegree-webservices and all dependent deegree3 modules. You can find the deegree-webservices artifacts in deegree-services/deegree-webservices/target
.
List of Maven profiles
There are several Maven profiles available to modify the build process, e.g. use
mvn install -P oracle,handbook
to enable support for Oracle Spatial and build the user handbook.
Here's a full list of available Maven profiles:
- handbook: builds the deegree webservices handbook
- integration-tests: runs integration tests (these take a couple of minutes)
- oracle: builds the Oracle SQL dialect
To show all available profiles use
mvn help:all-profiles | grep 'Profile Id' | sort -u
Running integration tests
In order to check if your code changes compile correctly and do not break any existing functionality, perform a clean build and run the integrations tests:
mvn clean install -P integration-tests
Building API documentation with JavaDoc
To build the API documentation run:
export MAVEN_OPTS="-Xmx2g" (Linux/Mac)
SET MAVEN_OPTS="-Xmx2g" (Windows)
mvn javadoc:javadoc
# or to build the complete Maven site:
mvn site
To deploy the site use:
mvn site-deploy
How to setup your IDE
Proceed with setting up deegree local working copy in your IDE.