@VisibleForTesting
  static Optional<AbsoluteUnixPath> getWorkingDirectoryChecked(RawConfiguration rawConfiguration)
      throws InvalidWorkingDirectoryException {
    Optional<String> directory = rawConfiguration.getWorkingDirectory();
    if (!directory.isPresent()) {
      return Optional.empty();
    }

    String path = directory.get();
    try {
      return Optional.of(AbsoluteUnixPath.get(path));
    } catch (IllegalArgumentException ex) {
      throw new InvalidWorkingDirectoryException(path, path, ex);
    }
  }
Gets the value of the {@code appRoot} parameter. If the parameter is empty, returns {@code
/var/lib/jetty/webapps/ROOT} for WAR projects or {@link JavaContainerBuilder#DEFAULT_APP_ROOT}
for other projects.

@param rawConfiguration raw configuration data
@param projectProperties the project properties
@return the app root value
@throws InvalidAppRootException if {@code appRoot} value is not an absolute Unix path
jib-plugins-common/src/main/java/com/google/cloud/tools/jib/plugins/common/PluginConfigurationProcessor.java