2019-12-21 18:43:16 +01:00
# openHAB Core
2019-06-01 22:35:47 +02:00
2021-11-04 09:23:09 +01:00
[![GitHub Actions Build Status ](https://github.com/openhab/openhab-core/actions/workflows/ci-build.yml/badge.svg?branch=main )](https://github.com/openhab/openhab-core/actions/workflows/ci-build.yml)
[![Jenkins Build Status ](https://ci.openhab.org/job/openHAB-Core/badge/icon )](https://ci.openhab.org/job/openHAB-Core/)
2023-11-26 21:26:19 +01:00
[![JavaDoc Build Status ](https://ci.openhab.org/view/Documentation/job/openHAB-JavaDoc/badge/icon?subject=javadoc )](https://ci.openhab.org/view/Documentation/job/openHAB-JavaDoc/)
2019-06-01 22:35:47 +02:00
[![EPL-2.0 ](https://img.shields.io/badge/license-EPL%202-green.svg )](https://opensource.org/licenses/EPL-2.0)
2021-04-22 17:40:20 +02:00
[![Crowdin ](https://badges.crowdin.net/openhab-core/localized.svg )](https://crowdin.com/project/openhab-core)
2019-02-01 16:18:41 +01:00
2019-12-21 18:43:16 +01:00
This project contains core bundles of the openHAB runtime.
2019-02-01 16:18:41 +01:00
Building and running the project is fairly easy if you follow the steps detailed below.
2019-12-21 18:43:16 +01:00
Please note that openHAB Core is not a product itself, but a framework to build solutions on top.
It is picked up by the main [openHAB distribution ](https://github.com/openhab/openhab-distro ).
2019-02-01 16:18:41 +01:00
This means that what you build is primarily an artifact repository of OSGi bundles that can be used within smart home products.
2019-06-01 22:35:47 +02:00
## 1. Prerequisites
2019-02-01 16:18:41 +01:00
The build infrastructure is based on Maven.
If you know Maven already then there won't be any surprises for you.
If you have not worked with Maven yet, just follow the instructions and everything will miraculously work ;-)
What you need before you start:
2019-06-01 22:35:47 +02:00
2022-12-19 19:52:43 +01:00
- Java SE Development Kit 17
2019-06-01 22:35:47 +02:00
- Maven 3 from https://maven.apache.org/download.html
2019-02-01 16:18:41 +01:00
2019-12-21 18:43:16 +01:00
Make sure that the `mvn` command is available on your path
2019-02-01 16:18:41 +01:00
2019-06-01 22:35:47 +02:00
## 2. Checkout
2019-02-01 16:18:41 +01:00
2019-06-01 22:35:47 +02:00
Checkout the source code from GitHub, e.g. by running:
2019-02-01 16:18:41 +01:00
2019-12-21 18:43:16 +01:00
```
2019-02-01 16:18:41 +01:00
git clone https://github.com/openhab/openhab-core.git
2019-12-21 18:43:16 +01:00
```
2019-02-01 16:18:41 +01:00
2019-06-01 22:35:47 +02:00
## 3. Building with Maven
2019-02-01 16:18:41 +01:00
To build this project from the sources, Maven takes care of everything:
2019-06-01 22:35:47 +02:00
2019-12-21 18:43:16 +01:00
- set `MAVEN_OPTS` to `-Xms512m -Xmx1024m`
- change into the openhab-core directory (`cd openhab-core`)
- run `mvn clean install` to compile and package all sources
2019-02-01 16:18:41 +01:00
If there are tests that are failing occasionally on your local build, run `mvn -DskipTests=true clean install` instead to skip them.
2019-06-01 22:35:47 +02:00
## How to contribute
2019-02-01 16:18:41 +01:00
2019-06-01 22:35:47 +02:00
If you want to become a contributor to the project, please read about [contributing ](https://www.openhab.org/docs/developer/contributing.html ) and check our [guidelines ](https://www.openhab.org/docs/developer/guidelines.html ) first.
2019-02-01 16:18:41 +01:00