Odabir SOCKS4 u OpenJDK 25 pomoću socksProxyVersion
Koristite dokumentirano svojstvo verzije s eksplicitnom SOCKS završnom točkom u OpenJDK 25 i uzmite u obzir opseg svojstva na razini cijelog JVM-a.
Za implementaciju soketa u OpenJDK 25 odaberite SOCKS4 pomoću svojstva socksProxyVersion. Ono se može navesti pri pokretanju aplikacije:
java -DsocksProxyVersion=4 YourApplicationAplikacija i dalje može eksplicitno navesti završnu točku proxyja:
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);
}Adrese su zamjenske. Neautentificirana adresa s popisa SOCKS4 proxyja može popuniti host i port proxyja za dopušteni javni IPv4 test; stvarnu ciljnu IPv4 adresu i port koristite odvojeno. Ovaj fragment otvara i zatvara TCP tok; aplikacijski protokol koristio bi povezani tok unutar bloka.
Implementacija OpenJDK 25 provjerava svojstvo verzije čak i kada je konstruktor primio običan eksplicitni SOCKS Proxy. Javni Proxy objekt sam sadrži tip i adresu, a ne polje SOCKS verzije po objektu.
Svojstvo verzije ima opseg na razini cijelog JVM-a. Ako paralelna opterećenja zahtijevaju različite SOCKS verzije, ne prebacujte ga naprijed-natrag oko pojedinačnih zahtjeva. Umjesto toga koristite klijentsko sučelje koje podržava potreban odabir po vezi. Privatna setV4 refleksija iz starih JDK primjera nije podržano konfiguracijsko sučelje.