我有一个JNLP Java WebStart应用程序,我想从其中读取环境变量,但它们都为NULL。
在我的JNLP应用程序中,我通过以下方式访问和打印变量:
Map<String, String> envArgs = System.getenv();
for (String key : envArgs.keySet()) {
System.out.println(key + "=" + arguments.get(key));
}
并且仅打印这样的行:
ProgramData = null
ProgramW6432 =空
HOMEPATH =空
PROCESSOR_IDENTIFIER =空
ProgramFiles = null
PUBLIC =空
windir = null
MOZ_CRASHREPORTER_PING_DIRECTORY =空
使用ProcessBuilder cmd = "C:\JDK\jre\bin\javaws -wait URL2JNLP"
从另一个Java应用程序启动JNLP应用程序:
ProcessBuilder pb = new ProcessBuilder(cmd[0], cmd[1], cmd[2]);
pb.environment().put("apple", "isFruite");
try {
return pb.start();
} catch (IOException e) {
LOG.error("Error starting JNLP application", e);
throw new RuntimeException(e);
}
是否有解决此环境变量访问/传递的方法?