Be *_*ers 11 windows-server-2012-r2
我在 Windows 2012 机器上运行 tomcat。
我需要在服务启动之前设置一个环境变量,以便我可以在 Web 应用程序中用 Java 查询该变量,如下所示:
String myVar = System.getenv("MY_VAR");
Run Code Online (Sandbox Code Playgroud)
该变量不是 tomcat 变量。它是特定于我们的应用程序的变量。
我没有将 tomcat 包含在这个问题的标签中,因为这适用于任何服务;不过,我很高兴能得到一个具体的 Tomcat 答案。
这是我要求tomcat特定解决方案的问题: https://superuser.com/questions/1142406/setting-user-environment-variables-for-tomcat-on-windows
我使用Windows管理服务的方式,从“管理工具”->“服务”访问来启动和停止tomcat。所以据我所知,我没有通常的控制权,可以将环境变量放入也启动服务器进程的 .bat 文件中。
Ver*_*Ray 13
如果您想仅为服务设置环境变量(无论它以什么用户身份运行),您可以在注册表中执行此操作:HKLM\SYSTEM\CurrentControlSet\Services。
下面是一个向 Windows Update 服务添加两个环境变量的简单示例regedit
(仅用于演示目的,这些变量不会影响服务):
FOO=Bar
KEY=SGVsbG8gV29ybGQhIQ==
启动(或重新启动,如果它已经在运行)该服务。然后我们可以使用 Process Explorer 查看环境变量是否可用:
小智 3
如果您寻找的是本地 Server 2012 环境变量,则可以使用 PowerShell 创建新的系统或用户环境变量,确保以管理员身份运行 PowerShell。
机器变量:
[Environment]::SetEnvironmentVariable('Name','Value','Machine')
用户变量:
[Environment]::SetEnvironmentVariable('Name','Value','User')
要检查当前环境变量,请使用以下 PowerShell 命令
Get-Childitem ENV:
Run Code Online (Sandbox Code Playgroud)
注意:您需要关闭 PowerShell 并打开一个新实例才能查看新创建的环境变量。
归档时间: |
|
查看次数: |
18634 次 |
最近记录: |