gpt4 book ai didi

java - 如何在tomcat中设置自定义环境变量?

转载 作者:行者123 更新时间:2023-12-01 16:47:18 28 4
gpt4 key购买 nike

我的程序中有几个键值对变量,现在已经硬编码了。

String pswd = StringUtils.defaultString(System.getProperty("KEY_STORE_PASSWORD"), "password");
String algorithm = StringUtils.defaultString(System.getProperty("KEY_STORE_ALGORITHM"), "SunX509");

我需要动态加载这些值。为此,我需要在 Tomcat 中将这些值设置为环境变量(自定义)。我正在使用 Tomcat 插件运行该应用程序。我尝试使用 setenv.bat 文件概念。我添加了以下行。

set KEY_STORE_PASSWORD=password

但我没有得到我的日志。我用了另一种方法

set JAVA_OPTS=-DKEY_STORE_PASSWORD=password

我添加了这一行,尝试过,但什么都没有......除了 null 打印在控制台中。我不知道什么是JAVA_OPTS,我没有为Tomcat添加任何系统环境变量。我应该先添加它们吗?我们需要添加哪些变量作为 Tomcat 的环境变量? JAVA_OPTS 是其中之一吗?

我可以在不创建自定义环境变量的情况下创建它们吗?

 String pswd1=System.getProperty("KEY_STORE_PASSWORD");

logger.info("pswd1 from tomcat"+ pswd1);

这些是我正在使用的打印语句。

最佳答案

这绝对是一个粗糙的问题,因为堆栈溢出流中所有批准的答案在我的案例中都失败了。我尝试使用 Setenv.bat 和 Catalina.bat 文件 我什至尝试在 tomcat 的 CATALINA_HOME/conf 文件夹中创建一个配置文件,名为 variables.conf 声明所有变量,包括键和值,我需要作为环境变量进行访问。

Pass user defined environment variable to tomcat

上面链接中的所有这些方法都失败了,最后我使用 Tomcat 的 JVM 设置 尝试了这个

  1. 打开窗口 -->> 首选项 -->> Tomcat -->> JVM 设置

    附加到JVM参数中,添加需要用作环境变量的变量(可以使用System.getProperty()在整个项目中访问这些变量 > ).

示例如下图所示:

enter image description here

这里我的变量是:

KEY_STORE_PASSWORD=
KEY_STORE_ALGORITHM=
KEY_STORE=
KEY_STORE_PROTOCOL=

可以将其写入 JVM 设置,格式为 -D 后跟变量[等于]变量值。

例如:-DKEY_STORE_PASSWORD=密码

如果您有任何疑问,请询问。

关于java - 如何在tomcat中设置自定义环境变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61749058/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com