code: public static void main(String[] args) throws Exception {
          AtomicReference<ServiceStarter> serviceStarter = new AtomicReference<>();
          try {
              System.err.println(System.getProperty(ServiceBuilderConfig.CONFIG_FILE_PROPERTY_NAME, "config.properties"));
              // Load up the ServiceBuilderConfig, using this priority order (lowest to highest):
              // 1. Configuration file (either default or specified via SystemProperties)
              // 2. System Properties overrides (these will be passed in via the command line or inherited from the JVM)
              ServiceBuilderConfig config = ServiceBuilderConfig
                      .builder()
                      .include(System.getProperty(ServiceBuilderConfig.CONFIG_FILE_PROPERTY_NAME, "config.properties"))
                      .include(System.getProperties())
                      .build();
  
              // For debugging purposes, it may be useful to know the non-default values for configurations being used.
              // This will unfortunately include all System Properties as well, but knowing those can be useful too sometimes.
              log.info("Segment store configuration:");
              config.forEach((key, value) -> log.info("{} = {}", key, value));
              serviceStarter.set(new ServiceStarter(config));
          } catch (Throwable e) {
              log.error("Could not create a Service with default config, Aborting.", e);
              System.exit(1);
          }
  
          try {
              serviceStarter.get().start();
          } catch (Throwable e) {
              log.error("Could not start the Service, Aborting.", e);
              System.exit(1);
          }
  
          try {
              Runtime.getRuntime().addShutdownHook(new Thread(() -> {
                  log.info("Caught interrupt signal...");
                  serviceStarter.get().shutdown();
              }));
  
              Thread.sleep(Long.MAX_VALUE);
          } catch (InterruptedException ex) {
              log.info("Caught interrupt signal...");
          } finally {
              serviceStarter.get().shutdown();
              System.exit(0);
          }
      }
docs: region main()