我有一个问题。
我试图运行一个从环境变量获取数据的JAR文件。
如果我打开一个CMD窗口并手动使用 set
命令设置每个环境变量,然后使用 java -jar MyFile.jar
运行JAR文件,一切正常。
然而,当我创建一个包含我之前执行的确切命令的批处理文件时,JAR文件找不到环境变量。 我尝试在所有命令之后使用 cmd /k
以尝试使用 echo
访问环境变量,并且它们可以正常工作。 请问我做错了什么?谢谢。
编辑:
这是我的批处理文件:
SET ATR1=ATR1_VALUE
SET ATR2=ATR2_VALUE
SET ATR3=ATR3_VALUE
JAVA -JAR MyFile.jar
使用这个文件时,我的JAR无法成功访问环境变量。
但是,如果我将每行代码单独运行,JAR文件可以正常工作。
我在代码中使用
System.getenv()
来访问环境变量。我尝试过使用
setx
,但它没有改变任何东西。
set
命令用于设置仅在当前会话中持续的变量。如果您想要在会话之间保留环境变量,请使用setx
命令。 - npocmaka