Seleccionar SOCKS4 en OpenJDK 25 con socksProxyVersion
Use a propiedade de versión documentada cun punto final SOCKS explícito en OpenJDK 25 e teña en conta o alcance da propiedade en toda a JVM.
Para a implementación de sockets de OpenJDK 25, seleccione SOCKS4 coa propiedade socksProxyVersion. Pódese proporcionar ao iniciar a aplicación:
java -DsocksProxyVersion=4 YourApplicationA aplicación aínda pode proporcionar o punto final do proxy de forma explícita:
Proxy proxy = new Proxy(Proxy.Type.SOCKS,
new InetSocketAddress("proxy.example", 1080));
try (Socket socket = new Socket(proxy)) {
socket.connect(new InetSocketAddress("192.0.2.10", 80), 5000);
socket.setSoTimeout(10000);
}Os enderezos son marcadores de posición. Un enderezo non autenticado da lista de proxies SOCKS4 pode encher o host e o porto do proxy para unha proba IPv4 pública permitida; use o enderezo IPv4 e o porto de destino reais por separado. Este fragmento abre e pecha o fluxo TCP; un protocolo de aplicación usaría o fluxo conectado dentro do bloque.
A implementación de OpenJDK 25 comproba a propiedade de versión mesmo cando o construtor recibiu un Proxy SOCKS explícito normal. O obxecto Proxy público contén en si mesmo un tipo e un enderezo, non un campo de versión SOCKS por obxecto.
A propiedade de versión ten alcance en toda a JVM. Se as cargas de traballo simultáneas requiren versións SOCKS diferentes, non a cambie dun lado a outro arredor de solicitudes individuais. No seu lugar, use unha interface de cliente que admita a selección necesaria por conexión. A reflexión privada setV4 de exemplos antigos de JDK non é a interface de configuración admitida.