我的实时作业项目想解析sql获取到TableIdentifier做sql血缘,使用的版本是flink 1.15.2,同时引入了 flink-table-planner_2.12 和 flink-table-planner-loader 依赖,debug时发现
TableEnvironmentImpl create(EnvironmentSettings settings) 方法会调用 FactoryUtil.discoverFactory(classLoader, ExecutorFactory.class, ExecutorFactory.DEFAULT_IDENTIFIER)方法 去寻找带有default标识的ExecutorFactory,结果找到了两个,一个是DelegateExcutorFactory,另一个是DefaultExecutorFactory。 于是抛了异常 "Multiple factories for identifier 'default' that implement ExecutorFactory found in the classpath." 进一步查看到这个DelegateExcutorFactory其实代理的是就是DefaultExecutorFactory 请问: 1. 这个DelegateExcutorFactory起什么作用? 2. 这两个module依赖的有什么区别和联系? 3. 项目中只能依赖这两个当中的其中一个jar吗?正确的应该依赖哪个module呢?