mvn clean install
Execute this command in the root of your custom assembly or Che repo. To make your build faster, you may use the following arguments:
-Dskip-enforce -DskipTests -Dskip-validate-sources -Dfindbugs.skip -DskipIntegrationTests=true -Dmdep.analyze.skip=true
If you prepare a PR to upstream Che, make sure build is a success with just
mvn clean install with all the tests and enforcers. If you have enough CPU, you may also add
-Dgwt.compiler.localWorkers=4 so that 4 CPU cores will be used during GWT compilation.
By default, Che is built with docker profile, which means Dashboard is built in a Docker container. You may use a different profile though -
mvn clean install -Pnative - in that case the following Node.JS version needs to be available:
At least 2 CPUs and 8GB RAM (recommended) is required.
Build in Docker
You can use a dev Docker image:
docker run -ti -v ~/.m2:/home/user/.m2 -v /path/to/che/assembly:/che eclipse/che-dev:nightly sh -c "mvn clean install"
We recommend mounting Maven repo (
-v ~/.m2:/home/user/.m2) to persist dependencies and make subsequent builds faster.
Build in Che
There are a few Maven enforcers brought by a parent pom.
All source file should have expected license. If your build fails because of a missing license, you may run
Your custom dependencies need to be declared to follow dependency convergence rules in Che (i.e. all dependencies have to be declared either in Che
maven-depmgt-pom or in a root pom of an assembly).
See: Code Style