[STORM-3906] Remove org.mockito.internal.util.reflection.FieldSetter and upgrade mockito to 3.11.2 (#3531)

diff --git a/DEPENDENCY-LICENSES b/DEPENDENCY-LICENSES
index 06f0d98..2da62ef 100644
--- a/DEPENDENCY-LICENSES
+++ b/DEPENDENCY-LICENSES
@@ -440,7 +440,7 @@
         * Nimbus JOSE+JWT (com.nimbusds:nimbus-jose-jwt:7.9 - https://bitbucket.org/connect2id/nimbus-jose-jwt)
         * Noggit (org.noggit:noggit:0.6 - http://github.com/yonik/noggit)
         * Objenesis (org.objenesis:objenesis:2.5.1 - http://objenesis.org)
-        * Objenesis (org.objenesis:objenesis:2.6 - http://objenesis.org)
+        * Objenesis (org.objenesis:objenesis:3.2 - http://objenesis.org/objenesis)
         * OkHttp (com.squareup.okhttp:okhttp:2.7.5 - https://github.com/square/okhttp/okhttp)
         * Okio (com.squareup.okio:okio:1.6.0 - https://github.com/square/okio/okio)
         * opencsv (net.sf.opencsv:opencsv:2.3 - http://opencsv.sf.net)
diff --git a/pom.xml b/pom.xml
index 7637240..09060a9 100644
--- a/pom.xml
+++ b/pom.xml
@@ -312,7 +312,7 @@
         <log4j.version>2.17.1</log4j.version>
         <slf4j.version>1.7.36</slf4j.version>
         <metrics.version>3.2.6</metrics.version>
-        <mockito.version>3.0.0</mockito.version>
+        <mockito.version>3.11.2</mockito.version>
         <zookeeper.version>3.5.9</zookeeper.version>
         <jline.version>0.9.94</jline.version>
         <hive.version>2.3.9</hive.version>
diff --git a/storm-client/test/jvm/org/apache/storm/executor/ExecutorTransferMultiThreadingTest.java b/storm-client/test/jvm/org/apache/storm/executor/ExecutorTransferMultiThreadingTest.java
index 8f38f82..279864b 100644
--- a/storm-client/test/jvm/org/apache/storm/executor/ExecutorTransferMultiThreadingTest.java
+++ b/storm-client/test/jvm/org/apache/storm/executor/ExecutorTransferMultiThreadingTest.java
@@ -12,6 +12,7 @@
 
 package org.apache.storm.executor;
 
+import java.lang.reflect.Field;
 import java.util.Collections;
 import java.util.HashMap;
 import java.util.Map;
@@ -40,7 +41,6 @@
 import org.apache.storm.utils.Utils;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
-import org.mockito.internal.util.reflection.FieldSetter;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
 import static org.mockito.ArgumentMatchers.any;
@@ -70,7 +70,7 @@
     private static final int value2 = 1234;
 
     @BeforeEach
-    public void setup() throws NoSuchFieldException {
+    public void setup() throws NoSuchFieldException, IllegalAccessException {
         topoConf = Utils.readStormConfig();
         String topologyId = "multi-threaded-topo-test";
         StormTopology stormTopology = createStormTopology();
@@ -101,12 +101,18 @@
 
         //Replace the transferQueue inside WorkerTransfer (inside WorkerState) with the customized transferQueue to be used in this test
         WorkerTransfer workerTransfer = new WorkerTransfer(workerState, topoConf, 2);
-        FieldSetter.setField(workerTransfer, workerTransfer.getClass().getDeclaredField("transferQueue"), transferQueue);
-        FieldSetter.setField(workerState, workerState.getClass().getDeclaredField("workerTransfer"), workerTransfer);
+        setPrivateField(workerTransfer, "transferQueue", transferQueue);
+        setPrivateField(workerState, "workerTransfer", workerTransfer);
 
         generalTopologyContext = mock(GeneralTopologyContext.class);
     }
 
+    private void setPrivateField(Object target, String fieldName, Object fieldValue) throws NoSuchFieldException, IllegalAccessException {
+        Field privateField = target.getClass().getDeclaredField(fieldName);
+        privateField.setAccessible(true);
+        privateField.set(target, fieldValue);
+    }
+
     @Test
     public void testExecutorTransfer() throws InterruptedException {
         //There is one ExecutorTransfer per executor