Java access to systemd via D-Bus
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.

Build Status Sonarqube quality gate Sonarqube test coverage Sonarqube lines of code Maven Central License: LGPL v2.1 License: AFL 3.0


Java access to systemd via D-Bus. Java D-Bus bindings (dbus-java) are required.

This library shall:

  • Provide Java access to systemd interfaces via D-Bus (Manager, Unit, Service, Target, etc.)
  • Provide adapters for the internals of the dbus-java API in order to
    • ease the access to systemds methods and properties
    • omit automatic (and low-performance) reflection stuff being done in dbus-java
    • provide observer-like patterns for objects along D-Bus signalling


Documentation and instructions how to use this library can be found in the Wiki.


Unit tests are based on TestNG and Mockito. Test methods which require a deployed systemd environment are grouped in TestNG group "requireSystemd". There are two TestNG suites available:

  • src/test/resources/suites/auto-systemd.xml (executes all tests)
  • src/test/resources/suites/auto.xml (excludes group "requireSystemd")


LGPL v2.1 and AFL 3.0.


These are no "official" Java bindings for systemd via D-Bus. I only work on it if the following requisites are met:

  • The kid is sleeping
  • My wife is hacking on her medical research topics
  • No beers in the fridge