java - 使用环境变量中的属性运行java

标签 java ubuntu jvm environment-variables

在我的应用程序中,我需要通过代理发送http请求。在终端中,我通过以下方式启动它:

java -Dhttp.proxyPort=**** -Dhttp.proxyHost=***.***.***.*** -jar app.jar 

我应该使用什么环境变量来启动没有 -D 选项的应用程序,例如

java -jar app.jar

操作系统Linux。 Java 7。

谢谢!

PS 已经尝试过 JAVA_OPTS、JAVA_OPTIONS、_JAVA_OPTIONS、JAVA_TOOL_OPTIONS...

最佳答案

Java 有两种不同的方式将参数传递给程序:

  • 属性,通常在命令行参数中指定(如第一个示例中所示),从文件加载或通过代码手动添加。
  • 环境变量,由操作系统中的设置决定。

这两个概念是不同的;前者不影响后者,反之亦然。因此,您无法通过环境变量来设置属性。

其他选项包括在运行时加载 .properties 文件(假设您的代理此时尚未初始化)或放置完整命令(-D 参数和所有)在 shell 脚本中以便于启动。

关于java - 使用环境变量中的属性运行java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27294896/

相关文章:

java - 如何在servlet中运行jasper报告

qt - 使用特定 QT 版本运行二进制文件 - 不能混合不兼容的 Qt 库

windows - 与 Windows dir 命令相比,为什么运行 opendir、readdir、stat 这么慢?

gomobile:找不到命令

java - JVM 错误? java.lang.VerifyError : Bad type on operand stack

java - 在服务器上运行脚本在 Google App Engine 上启动,使用 Java

java - 将2个变量传递给passedView

java - Java中是否有常用的有理数库?

java - 可以在没有操作系统的情况下运行java程序吗?

java - 如果服务器突然宕机,Java代码会中途终止吗