我們都知道如何在Java
中獲取系統屬性
:
System.getProperty(ESClientConstance.HTTP_PROXY_HOST);
這樣可以獲取操作系統默認的一些屬性值。
如果我們需要自定義一些系統屬性,那麼這樣定義:
-Dhttp_proxy_host=192.19.19.19
但是要注意下面這種情況,會導致java -D
失效,進而導致System.getProperty
獲取不到屬性值。
比如我的這樣一個以java -jar
方式啓動的腳本:
nohup java -agentlib:jdwp=transport=dt_socket,address=39502,server=y,suspend=n \
-jar /opt/spider-es-cli/es-client-1.0.0.jar \
-Dhttp_proxy_host=100.129.18.11 \
-Dhttp_proxy_port=3128 \
--spring.profiles.active=prod \
--server.port=9502 >/dev/null 2>&1 &
注意:-D
錯誤地配置在了-jar
之後。
處理方式是將-D
正確地配置在-jar
之前即可。
同樣地,對java 類名
方式啓動也一樣,注意要將-D
配置在類名
之前。