这个问题在这里已经有答案了:
卸载Spring引导配置(3个答案)4个月前关门了。我需要从正在运行的示例中转储springboot应用程序属性,可以吗?为什么我需要它:我正在使用 -Dspring.profiles.active=profilea,profileb 链接纵断面,但其中一个属性设置不正确。谢谢
-Dspring.profiles.active=profilea,profileb
l0oc07j21#
这里有同样的问题:转储spring引导配置由此总结:没有内在的机制。但我也很好奇是否有人知道。但当您启动时,可以使用system.getproperties()并将它们打印到日志文件中。
package org.example; import org.slf4j.*; import org.springframework.boot.*; import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication public class JwtEvaluatorApplication implements ApplicationRunner { Logger log = LoggerFactory.getLogger(getClass()); public static void main(String[] args) { SpringApplication.run(JwtEvaluatorApplication.class, args); } @Override public void run(ApplicationArguments args) throws Exception { List<String> cmdArg1 = args.getOptionValues("cmdArg1"); if (cmdArg1 != null && cmdArg1.size() > 0) { System.setProperty("cmdArg1", cmdArg1.get(0)); } logPropeties(); } void logPropeties() { for (Object key : System.getProperties().keySet()) { log.info(key + ": " + System.getProperty(key.toString(), "not defined")); } } }
稍后在另一个类中,您可以通过以下方式访问它:
String cmdArg1 = System.getProperty("cmdArg1");
1条答案
按热度按时间l0oc07j21#
这里有同样的问题:转储spring引导配置
由此总结:没有内在的机制。但我也很好奇是否有人知道。
但当您启动时,可以使用system.getproperties()并将它们打印到日志文件中。
稍后在另一个类中,您可以通过以下方式访问它: