Java openjdk:8和非Proxy主机不工作

Java openjdk:8和非Proxy主机不工作,java,docker,proxy,ip,ignore,Java,Docker,Proxy,Ip,Ignore,我有以下docker配置: FROM openjdk:8 ADD *.jar /service.jar VOLUME /tmp EXPOSE 8080 # Set timezone CET (DE Time) ENV TZ=CET RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone CMD echo "The Service will start..." &am

我有以下docker配置:

FROM openjdk:8

ADD *.jar /service.jar

VOLUME /tmp
EXPOSE 8080

# Set timezone CET (DE Time)
ENV TZ=CET
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone

CMD echo "The Service will start..." && \
java -DsocksProxyHost=192.168.1.250 -Dhttp.nonProxyHosts="192.168.1.5|192.168.1.36" -jar /service.jar
我的问题是在Java8中完全忽略了非代理。如果我切换到openjdk:9,工作正常,但我不能这样做,因为该服务有一些东西强烈依赖于jdk8

我没有引用,也没有转义管道字符,但什么也没有:(

有人遇到了这个奇怪的问题,解决方案/解决方法解决了

在研究了openjdk8和openjdk9的源代码之后,我发现我需要指定两倍的非代理ip列表。因此,openjdk8的解决方案是:

java -DsocksProxyHost=192.168.1.250 -Dhttp.nonProxyHosts="192.168.1.5|192.168.1.36" -DsocksNonProxyHosts="192.168.1.5|192.168.1.36" -jar /service.jar

这听起来像是更新的JVM中的一个变化,你描述它的方式;一些配置在Docker之外的同一个JVM版本上工作吗?Pff,在Docker之外很难复制,因为它在GCP上,但是在,是的,我会在本地做一些尝试。socksProxyHost应该是
http.proxyHost
nope,有socksProxyHost,因为它用于JDBCso,所以在哪里发送带有http.nonProxyHosts的主机?