>> java.lang.NoSuchMethodError:
org.apache.flink.util.NetUtils.getAvailablePort()I

你的环境是不是不太干净?可以检查一下 PyFlink 安装目录下(site-packages/pyflink/lib) 的那些 jar 包的版本。



On Mon, May 23, 2022 at 4:22 PM RS <[email protected]> wrote:

> Hi,
> 在Pycharm中,测试Pyflink示例代码,启动运行报错,代码为官方文档中的代码
> 参考官方文档:
> https://nightlies.apache.org/flink/flink-docs-release-1.15/docs/dev/python/table_api_tutorial/
> 报错如下:
> ============================
> Exception in thread "main" java.util.concurrent.ExecutionException:
> java.lang.NoSuchMethodError:
> org.apache.flink.util.NetUtils.getAvailablePort()I
> at
> java.base/java.util.concurrent.CompletableFuture.reportGet(CompletableFuture.java:395)
> at
> java.base/java.util.concurrent.CompletableFuture.get(CompletableFuture.java:1999)
> at
> org.apache.flink.client.python.PythonEnvUtils.startGatewayServer(PythonEnvUtils.java:387)
> at
> org.apache.flink.client.python.PythonGatewayServer.main(PythonGatewayServer.java:46)
> Caused by: java.lang.NoSuchMethodError:
> org.apache.flink.util.NetUtils.getAvailablePort()I
> at
> org.apache.flink.client.python.PythonEnvUtils.lambda$startGatewayServer$3(PythonEnvUtils.java:366)
> at java.base/java.lang.Thread.run(Thread.java:834)
> Traceback (most recent call last):
>   File "C:/flink/ex2.py", line 132, in <module>
>     word_count(known_args.input, known_args.output)
>   File "C:/flink/ex2.py", line 50, in word_count
>     t_env =
> TableEnvironment.create(EnvironmentSettings.in_streaming_mode())
>   File
> "C:\code\py\venv\3.6\lib\site-packages\pyflink\table\environment_settings.py",
> line 221, in in_streaming_mode
>     get_gateway().jvm.EnvironmentSettings.inStreamingMode())
>   File "C:\code\py\venv\3.6\lib\site-packages\pyflink\java_gateway.py",
> line 62, in get_gateway
>     _gateway = launch_gateway()
>   File "C:\code\py\venv\3.6\lib\site-packages\pyflink\java_gateway.py",
> line 112, in launch_gateway
>     raise Exception("Java gateway process exited before sending its port
> number")
> Exception: Java gateway process exited before sending its port number
> ============================
>
>
> 环境:java11,python3.6,apache-flink=1.15.0
> 网上搜索解决方案:比如配置JAVA_HOME,但是还是一样的报错
>     import os
>     os.environ['JAVA_HOME'] = 'C:\Program Files\Java\jdk-11.0.15.1'
>
>
> 请教下大佬们,这种情况下如何解决?
>
>
> Thanks
>
>

回复