在 glassfish 4 中为应用 运行 设置系统变量的位置

Where to set system variable for application running in glassfish 4

我们需要设置一个我们的应用程序可以读取的系统变量,它在 Glassfish 4 中 运行。应用程序当前正在使用 System.getenv() 访问系统变量。

我们在 Windows 中设置系统环境 属性 如下:

App_Home=/opt/app/config

我试过将它添加到 glassfish/glassfish4/config/asenv.conf 但似乎没有用。我做了很多搜索,我保留 运行 的所有内容都是设置 java 属性(例如这个 How to set an env variable in Glassfish 2.1)。我想访问系统 属性 而不是 java 属性.

我还尝试在 "Server (Admin Server) --> Properties --> System Properties" 下的 glassfish 管理控制台中设置 "System Properties" 单击 "Add Property" 并添加我的环境变量。但是,应用程序仍然无法使用 System.getenv().

找到它

我能够在我的服务文件中使用 Service Environment= option 来解决这个问题。

只需添加以下内容即可:

Environment="App_Home=..."
Environment="PYTHONPATH=..."