Skip to content
Stand with Ukraine flag

Building ThingsBoard Edge from sources

Build ThingsBoard Edge from source on Ubuntu 22.04 LTS / 24.04 LTS or CentOS 8/9.

ThingsBoard Edge requires Java 17.

Terminal window
sudo apt update && sudo apt install openjdk-17-jdk-headless

Configure your operating system to use OpenJDK 17 by default:

Terminal window
sudo update-alternatives --config java

Verify the installation:

Terminal window
java -version

The expected output:

openjdk version "17.x.xx"
OpenJDK Runtime Environment (...)
OpenJDK 64-Bit Server VM (build ...)

ThingsBoard Edge requires Maven 3.1.0 or later.

Terminal window
sudo apt-get install maven
Terminal window
git clone -b release-4.3 [email protected]:thingsboard/thingsboard-edge.git
cd thingsboard-edge

Run the following command from the thingsboard-edge directory:

Terminal window
mvn clean install -DskipTests

Make sure Docker is installed, then run:

Terminal window
mvn clean install -DskipTests -Ddockerfile.skip=false

After a successful build, the .deb, .rpm, and Windows .zip packages are available at:

Terminal window
application/target

Clear Maven cache if you encounter dependency resolution errors:

Terminal window
rm -rf ~/.m2/repository

Clear Gradle cache if the UI build fails:

Terminal window
rm -rf ~/.gradle/caches/

Clear Node modules if the Angular frontend build fails:

Terminal window
rm -rf ui-ngx/node_modules

Build in parallel with license headers and Docker images:

Terminal window
mvn -T 0.8C license:format clean install -DskipTests -Ddockerfile.skip=false