You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user-zh@flink.apache.org by RS <ti...@163.com> on 2022/05/23 08:15:19 UTC

pyflink报错:Java gateway process exited before sending its port number

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


Re:Re: pyflink报错:Java gateway process exited before sending its port number

Posted by RS <ti...@163.com>.
Hi,
感谢,查询pyflink目录下,里面确实存在多个版本的jar包,我清理了下,可以运行起来了,
看来是PyCharm的bug了,安装新版本的时候没有成功清理旧的版本


Thanks~



在 2022-05-23 19:27:42,"Dian Fu" <di...@gmail.com> 写道:
>>> 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 <ti...@163.com> 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
>>
>>

Re: pyflink报错:Java gateway process exited before sending its port number

Posted by Dian Fu <di...@gmail.com>.
>> 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 <ti...@163.com> 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
>
>