在我的应用程序启动中,我从app属性中的env变量中获取了一些变量。
弹簧启动容器可以正常工作。
但是当我使用wildfly 10 System.getenv
启动应用程序时,总是返回null。我在STS中的运行配置中设置我的env变量,它也不能在运行wildfly的openshift中工作。
以下是我的代码示例:
String showSql = System.getenv("SHOW_SQL");
if(value.contains(":")){
int split = value.indexOf(":");
List<String> s = new ArrayList<String>();
s.add(value.substring(1, split)) ;
s.add(value.substring(split+1, value.length()-1));
// value.split(":");
if(System.getenv(s.get(0)) != null){
var = System.getenv(s.get(0));
}else{
var = s.get(1);
var = var.replace(":", "");
}
}else{
value = value.replace("{", "");
value = value.replaceAll("}", "");
var = System.getenv(value);
}
任何人都可以帮助我吗?
答案 0 :(得分:0)
您可以使用命令使用jboss-cli在Wildfly中设置属性 / system-property = foo:add(value = bar),您可以使用System.getProperty从应用程序获取(同时可能需要重新加载)。该属性将存储在Wildfly配置中,因此它将在重新启动后继续存在:)