windows下安装py4j

今天早上看stackoverflow时看到http://stackoverflow.com/questions/20754129/how-to-call-java-from-python-using-py4j这个问题很想学习下py4j的用法,正好最近在学习基础的python知识,对于引进一些非原生模块,作为新手的我有时候还是感到很迷惑:

比如我引入reportlab模块时,下载的是exe文件直接安装就行了;在比如我引入BeautifulSoup-3.2.1模块时,下载的是zip文件,解压出来后运行setup.py然后生成两个pyc文件,将他们拷入C:\Python27(python安装目录)\Lib下就行了。

今天安装py4j时遇到了一些问题(windows 7安装),总结如下(具体安装步骤请移步http://blog.csdn.net/jetway_wmn/article/details/7009901,就不详细列举):

1、下载:https://pypi.python.org/pypi/py4j 下载zip文件

2,、解压后运行setup.py

3、当安照http://blog.csdn.net/jetway_wmn/article/details/7009901上说要把py4j加入PYTHONPATH时,我先这样设置的:

sys.path.append('C:\Users\Administrator\Downloads\py4j-0.8\py4j-0.8\src\py4j')
但是当运行
from py4j.java_gateway import JavaGateway
时报错了:
Traceback (most recent call last):
  File "<pyshell#4>", line 1, in <module>
    from py4j.java_gateway import JavaGateway
ImportError: No module named py4j.java_gateway
我百思不得其解,后来我捣腾了一段时间后,发现引入的时候都是py4j.后面加模块名,然后我想是不是我的PYTHONPATH是否应该设置到上一层目录:

del sys.path[9]
sys.path.append('C:\Users\Administrator\Downloads\py4j-0.8\py4j-0.8\src')
然后成功啦!原来python也像java一样文件夹表示成包形式(个人理解),所以刚开始把PYTHONPATH设置到py4j目录,它永远不会找到培育py4j下面的py4j这个文件夹了!!


接着开始尝试啦:

>>> from py4j.java_gateway import JavaGateway
>>> gateway = JavaGateway()
>>> random = gateway.jvm.java.util.Random()


额,终于还是出现问题

Traceback (most recent call last):
  File "<pyshell#30>", line 1, in <module>
    random = gateway.jvm.java.util.Random()
  File "C:\Users\Administrator\Downloads\py4j-0.8\py4j-0.8\src\py4j\java_gateway.py", line 708, in __getattr__
    '\n' + END_COMMAND_PART)
  File "C:\Users\Administrator\Downloads\py4j-0.8\py4j-0.8\src\py4j\java_gateway.py", line 339, in send_command
    connection = self._get_connection()
  File "C:\Users\Administrator\Downloads\py4j-0.8\py4j-0.8\src\py4j\java_gateway.py", line 295, in _get_connection
    connection = self._create_connection()
  File "C:\Users\Administrator\Downloads\py4j-0.8\py4j-0.8\src\py4j\java_gateway.py", line 302, in _create_connection
    connection.start()
  File "C:\Users\Administrator\Downloads\py4j-0.8\py4j-0.8\src\py4j\java_gateway.py", line 409, in start
    raise Py4JNetworkError(msg)
Py4JNetworkError: An error occurred while trying to connect to the Java server

提示没有启动java server,最后发现我没有读完整文章~~~ 尴尬,还得在先建一个java类(把py4j0.8.jar在解压文件的py4j-0.8\py4j-java中引入类中),

GatewayServer server = new GatewayServer(app);
	    server.start();
然后在在pyhon中调用java方法就行了~


  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在Windows安装Spark,您可以按照以下步骤进行操作: 1. 下载Spark软件包以及所需的其他组件,如Scala、Hadoop和Maven。您可以从官方网站或其他可信来源下载这些软件包。确保下载与您的系统和版本兼容的软件包。 2. 将下载的Spark软件包解压到您选择的目录。可以选择将其解压到系统的任何位置,例如D:\spark-3.0.3-bin-hadoop2.7。 3. 设置环境变量。将解压目录(例如D:\spark-3.0.3-bin-hadoop2.7\bin)添加到系统的PATH环境变量中。这将使系统能够在任何位置访问Spark命令。 4. 安装Hadoop(如果尚未安装)。这是可选的,但在某些情况下,安装Hadoop可以解决某些错误。您可以从官方网站下载Hadoop软件包,并按照其文档进行安装安装完成后,将Hadoop的bin目录添加到系统的PATH环境变量中。 5. 安装所需的Python库。您可以使用pip命令安装ipykernel、py4j、findspark和nb_conda_kernels。这些库将帮助您在Jupyter Notebook中使用Spark。 6. 完成安装后,您可以通过在命令行输入spark-shell来测试安装是否成功。如果一切顺利,您应该能够启动Spark交互式Shell。 请根据您的需求和具体情况调整上述步骤。这些步骤应该可以帮助您在Windows上成功安装Spark。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [windows安装Spark](https://blog.csdn.net/github_38924695/article/details/119130578)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] - *2* [windows安装spark2软件包.zip](https://download.csdn.net/download/pengpenhhh/14240508)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] - *3* [windonws下spark的安装(最新安装)](https://blog.csdn.net/m0_57382185/article/details/127598337)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值