diff --git a/common/src/main/java/com/alibaba/datax/common/util/StrUtil.java b/common/src/main/java/com/alibaba/datax/common/util/StrUtil.java index 867a9516..02fcaf41 100755 --- a/common/src/main/java/com/alibaba/datax/common/util/StrUtil.java +++ b/common/src/main/java/com/alibaba/datax/common/util/StrUtil.java @@ -58,9 +58,14 @@ public class StrUtil { Matcher matcher = VARIABLE_PATTERN.matcher(param); while (matcher.find()) { String variable = matcher.group(2); - String value = System.getProperty(variable); - if (StringUtils.isBlank(value)) { - value = matcher.group(); + String value = matcher.group(); + String valueFromEnv = System.getenv(variable); + String valueFromProp = System.getProperty(variable); + if (StringUtils.isNotBlank(valueFromEnv)) { + value = valueFromEnv; + } + if (StringUtils.isNotBlank(valueFromProp)) { + value = valueFromProp; } mapping.put(matcher.group(), value); }