code: protected void loadInterpolationValues() {
          // System properties may be accessed using ${name} or @{name}
          for (String propertyName : System.getProperties().stringPropertyNames()) {
              String value = System.getProperty(propertyName);
              if (!StringUtils.isNullOrEmpty(value)) {
                  addInterpolationValue(propertyName, value);
              }
          }
  
          // Environment variables may be accessed using ${env.NAME} or @{env.NAME}
          for (String variableName : System.getenv().keySet()) {
              String value = System.getenv(variableName);
              if (!StringUtils.isNullOrEmpty(value)) {
                  addInterpolationValue("env." + variableName, value);
              }
          }
      }
docs: Creates a map of prepared interpolation values.
  <p>
  All values support the standard ${name} syntax but also support
  the @{name} syntax to cope with build systems with aggressive
  token filtering.
  </p>