@TestOnly
  public static synchronized UDFClassLoaderManager setupAndGetInstance() throws IOException {

    if (INSTANCE == null) {
      INSTANCE = new UDFClassLoaderManager();
    }
    return INSTANCE;
  }
activeClassLoader is used to load all classes under libRoot. libRoot may be updated before the
user executes CREATE FUNCTION or after the user executes DROP FUNCTION. Therefore, we need to
continuously maintain the activeClassLoader so that the classes it loads are always up-to-date.
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/udf/service/UDFClassLoaderManager.java