按照 https://github.com/flink-extended/flink-remote-shuffle 上的指南试着运行flink remote 
shuffle服务跑一个batch作业,结果报错如下。我本地使用的是scala 2.12 
因此编译打包flink-remote-shuffle的时候使用的命令是:mvn clean install -DskipTests 
-Dscala.binary.version=2.12
报的这个找不到的类是flink-streaming-java_2.12-1.14.0.jar下的,我将该jar包放在$FLINK_HOME/lib目录下也没有作用。本地flink版本是1.14.0



java.lang.NoClassDefFoundError: 
org/apache/flink/streaming/api/graph/GlobalStreamExchangeMode

at com.alibaba.flink.shuffle.examples.BatchJobDemo.main(BatchJobDemo.java:51)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

at java.lang.reflect.Method.invoke(Method.java:498)

at 
org.apache.flink.client.program.PackagedProgram.callMainMethod(PackagedProgram.java:355)

at 
org.apache.flink.client.program.PackagedProgram.invokeInteractiveModeForExecution(PackagedProgram.java:222)

at org.apache.flink.client.ClientUtils.executeProgram(ClientUtils.java:114)

at org.apache.flink.client.cli.CliFrontend.executeProgram(CliFrontend.java:812)

at org.apache.flink.client.cli.CliFrontend.run(CliFrontend.java:246)

at org.apache.flink.client.cli.CliFrontend.parseAndRun(CliFrontend.java:1054)

at org.apache.flink.client.cli.CliFrontend.lambda$main$10(CliFrontend.java:1132)

at 
org.apache.flink.runtime.security.contexts.NoOpSecurityContext.runSecured(NoOpSecurityContext.java:28)

at org.apache.flink.client.cli.CliFrontend.main(CliFrontend.java:1132)

Caused by: java.lang.ClassNotFoundException: 
org.apache.flink.streaming.api.graph.GlobalStreamExchangeMode

at java.net.URLClassLoader.findClass(URLClassLoader.java:382)

at java.lang.ClassLoader.loadClass(ClassLoader.java:418)

at 
org.apache.flink.util.FlinkUserCodeClassLoader.loadClassWithoutExceptionHandling(FlinkUserCodeClassLoader.java:64)

at 
org.apache.flink.util.ChildFirstClassLoader.loadClassWithoutExceptionHandling(ChildFirstClassLoader.java:65)

at 
org.apache.flink.util.FlinkUserCodeClassLoader.loadClass(FlinkUserCodeClassLoader.java:48)

at java.lang.ClassLoader.loadClass(ClassLoader.java:351)

... 14 more

回复