我在web上搜索了很多,几乎所有的链接都写着在JVM中定义JVM自定义变量。Options也将其放置在${server.config.dir}/JVM.options上。例如,我添加了一个名为-dapp_env=prod的变量。但在服务器启动后,这将变为NULL。
你知道吗?
看起来您希望定义一个环境变量,因此您有两个选项。
1.使用环境变量
在这种情况下,您可以定义一个环境变量(如$path),并将其加载到应用程序中。注这不是JVM参数,它将在用于启动服务器的bin/server
shell命令中设置。
在文件:${server.config.dir}/jvm.options
中添加以下行:-dapp_env=prod
访问值:system.getproperty(“app_env”);
->prod
请注意,在这两种情况下,这些值都是在服务器启动时设置的,它们不是动态更改的(大多数Liberty配置是动态的)。JVM选项和环境是在start脚本中获取和设置的,因此如果要更改其中任何一个,都需要重新启动。
我个人的建议是转到server.env
路由--它更通用,而且(对我来说)感觉更合适,因为您试图影响流程的执行环境,而不是定义JVM的行为或配置。