Избор на SOCKS4 во OpenJDK 25 со socksProxyVersion
Користете го документираното својство за верзија со експлицитна SOCKS крајна точка во OpenJDK 25 и земете го предвид опсегот на својството низ целиот JVM.
За имплементацијата на сокети во OpenJDK 25, изберете SOCKS4 со својството socksProxyVersion. Тоа може да се зададе при стартување на апликацијата:
java -DsocksProxyVersion=4 YourApplicationАпликацијата сепак може експлицитно да ја зададе крајната точка на проксито:
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);
}Адресите се замени. Неавтентифицирана адреса од списокот со SOCKS4 прокси може да го пополни домаќинот и портата на проксито за дозволен јавен IPv4 тест; користете ја вистинската целна IPv4 адреса и порта одделно. Овој фрагмент го отвора и затвора TCP текот; апликацискиот протокол би го користел поврзаниот тек внатре во блокот.
Имплементацијата на OpenJDK 25 го проверува својството за верзија дури и кога конструкторот примил обичен експлицитен SOCKS Proxy. Јавниот објект Proxy сам содржи тип и адреса, а не поле за SOCKS верзија по објект.
Својството за верзија има опсег низ целиот JVM. Ако паралелните работни оптоварувања бараат различни SOCKS верзии, не го префрлајте напред-назад околу поединечни барања. Наместо тоа, користете клиентски интерфејс што го поддржува потребниот избор по врска. Приватната setV4 рефлексија од старите JDK примери не е поддржаниот интерфејс за конфигурација.