ເລືອກ SOCKS4 ໃນ OpenJDK 25 ດ້ວຍ socksProxyVersion
ໃຊ້ຄຸນສົມບັດເວີຊັນທີ່ເປັນເອກະສານກັບຈຸດສິ້ນສຸດ SOCKS ທີ່ຊັດເຈນໃນ OpenJDK 25, ແລະພິຈາລະນາຂອບເຂດຂອງຄຸນສົມບັດນີ້ທົ່ວ JVM.
ສຳລັບການຈັດຕັ້ງ socket ຂອງ 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 ກວດສອບຄຸນສົມບັດເວີຊັນແມ່ນແຕ່ເມື່ອ constructor ໄດ້ຮັບ Proxy ຊະນິດ SOCKS ທີ່ຊັດເຈນປົກກະຕິ. ວັດຖຸ Proxy ສາທາລະນະມີຊະນິດ ແລະ ທີ່ຢູ່ໃນຕົວມັນເອງ, ບໍ່ແມ່ນຊ່ອງເວີຊັນ SOCKS ຕໍ່ວັດຖຸ.
ຄຸນສົມບັດເວີຊັນມີຂອບເຂດທົ່ວ JVM. ຖ້າພາລະວຽກພ້ອມກັນຕ້ອງການເວີຊັນ SOCKS ທີ່ແຕກຕ່າງກັນ, ຢ່າສະຫຼັບມັນໄປມາຮອບຄຳຮ້ອງແຕ່ລະອັນ. ແທນທີ່ຈະນັ້ນ ໃຊ້ອິນເຕີເຟສລູກຄ້າທີ່ຮອງຮັບການເລືອກຕໍ່ການເຊື່ອມຕໍ່ທີ່ຕ້ອງການ. ການສະທ້ອນ setV4 ແບບສ່ວນຕົວຈາກຕົວຢ່າງ JDK ເກົ່າບໍ່ແມ່ນອິນເຕີເຟສການຕັ້ງຄ່າທີ່ຮອງຮັບ.