From 5b5d7366ab956218e45aa5d8b639b7f85eda5a50 Mon Sep 17 00:00:00 2001 From: Nikita Koksharov Date: Mon, 4 Dec 2023 14:18:42 +0300 Subject: [PATCH] Intellij compilation fixed --- .../src/main/java/org/redisson/client/RedisClient.java | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/redisson/src/main/java/org/redisson/client/RedisClient.java b/redisson/src/main/java/org/redisson/client/RedisClient.java index e948757a3..a5ae7d1f0 100644 --- a/redisson/src/main/java/org/redisson/client/RedisClient.java +++ b/redisson/src/main/java/org/redisson/client/RedisClient.java @@ -39,7 +39,6 @@ import io.netty.util.NetUtil; import io.netty.util.Timer; import io.netty.util.concurrent.Future; import io.netty.util.concurrent.FutureListener; -import jdk.net.ExtendedSocketOptions; import org.redisson.api.RFuture; import org.redisson.client.handler.RedisChannelInitializer; import org.redisson.client.handler.RedisChannelInitializer.Type; @@ -149,9 +148,12 @@ public final class RedisClient { SocketOption idleOption = null; SocketOption intervalOption = null; try { - countOption = (SocketOption) ExtendedSocketOptions.class.getDeclaredField("TCP_KEEPCOUNT").get(null); - idleOption = (SocketOption) ExtendedSocketOptions.class.getDeclaredField("TCP_KEEPIDLE").get(null); - intervalOption = (SocketOption) ExtendedSocketOptions.class.getDeclaredField("TCP_KEEPINTERVAL").get(null); + // fixes Intellij compilation issue with JDK 1.8 + Class options = Class.forName("jdk.net.ExtendedSocketOptions"); + + countOption = (SocketOption) options.getDeclaredField("TCP_KEEPCOUNT").get(null); + idleOption = (SocketOption) options.getDeclaredField("TCP_KEEPIDLE").get(null); + intervalOption = (SocketOption) options.getDeclaredField("TCP_KEEPINTERVAL").get(null); } catch (ReflectiveOperationException e) { // skip }