当前位置: 首页 > news >正文

/usr/bin/python: can't decompress data; zlib not available 的异常处理

1. 问题背景

使用Pycharm连接远程服务器端pipenv虚拟环境的python解释器,运行python spark脚本时报错如下错误:

2018-09-12 23:56:00 ERROR Executor:91 - Exception in task 0.0 in stage 0.0 (TID 0)
org.apache.spark.SparkException:
Error from python worker:
/usr/bin/python: can't decompress data; zlib not available
PYTHONPATH was:
/home/kangwang/.local/share/virtualenvs/pyspark-C8JL9jUk/lib/python3.5/site-packages/pyspark/python/lib/pyspark.zip:/home/kangwang/.local/share/virtualenvs/pyspark-C8JL9jUk/lib/python3.5/site-packages/pyspark/python/lib/py4j-0.10.7-src.zip:/home/kangwang/.local/share/virtualenvs/pyspark-C8JL9jUk/lib/python3.5/site-packages/pyspark/jars/spark-core_2.11-2.3.1.jar:/home/kangwang/.pycharm_helpers/pycharm_matplotlib_backend:/home/kangwang/myproject/pyspark
java.io.EOFException
at java.io.DataInputStream.readInt(DataInputStream.java:392)

百度这个方法 https://blog.csdn.net/iejtyq/article/details/64438398,发现无效,所以需要继续分析。

2. 问题分析

我是用pipenv在个人目录 myproject/pyspark下创建的虚拟环境,用来存放pyspark工程,其中python3.5解释器的安装路径为下面所示:

根据报错信息,可能是缺少相关依赖包,根据这篇博客https://blog.csdn.net/iejtyq/article/details/64438398 的做法,发现问题并没有得到解决,继续观察报错信息,发现其中的python解释器路径与我虚拟环境里的路径不一致,所以会不会是解释器的问题了呢?

在服务器的虚拟环境下按以下方式执行test.py文件,发现并无报错。由此,结合上面报错信息,可知报错原因是Pycharm在Run test.py 时并没有成功使用虚拟环境下的python解释器。

3. 解决办法

把虚拟环境下的python解释器加到pycharm中.py脚本的环境变量中,即 PATH=/home/kangwang/.local/share/virtualenvs/pyspark-C8JL9jUk/bin:$PATH

具体步骤为1~7步:

 

 

以上,就是这个脚本的环境变量配置过程。

 

如果工程下的脚本都在服务器同一个虚拟环境下运行,采用上面那样一个一个脚本配置环境变量的方法会很繁琐,因此,可对整个工程下的环境变量进行设置:

 

注意:工程下的环境变量的设置后,在该工程下创建新的.py文件时会自动添加已有的环境变量配置。然而,当重启Pycharm并再次进去该工程下创建新的.py文件时,之前设置的工程下的环境变量将失效,即不会保存。所以,在重启pycharm后,还需要再次重复上面8~15步。

 

转载于:https://www.cnblogs.com/wkang/p/9638305.html

相关文章:

  • cad灯具图标_这份CAD图例图标合集,必须人手一份!
  • ffmpeg 声音参数_ffmpeg转换参数和压缩输出大小的比率
  • 网页顶部进度条-NProcess.js
  • log4j 源码解析_log4j的使用详细解析
  • 一个简单的存储过程的学习以及使用
  • 除中文外的正则_优质中文NLP资源集合,做项目一定用得到!
  • 快速幂取模算法代码
  • 三十天学会绘画pdf_素描基础必学的观察法,全套PDF电子书下载!
  • .NET Core 版本不支持的问题
  • all方法 手写promise_Promise 所有方法实现
  • Java 的单元测试
  • 以下不属于时序逻辑电路的有_学习笔记:时序电路基础
  • 【字符串处理】关于KMP算法输出的是什么代码
  • 好分数阅卷3.0_揭秘!自考阅卷的批改套路!
  • 手机沙盒隔离软件_最好别装手机杀毒软件,不仅没用反而是累赘!
  • JavaScript-如何实现克隆(clone)函数
  • classpath对获取配置文件的影响
  • go append函数以及写入
  • LeetCode算法系列_0891_子序列宽度之和
  • python学习笔记-类对象的信息
  • 从重复到重用
  • 深入浅出Node.js
  • 使用iElevator.js模拟segmentfault的文章标题导航
  • 一个普通的 5 年iOS开发者的自我总结,以及5年开发经历和感想!
  • ​ 轻量应用服务器:亚马逊云科技打造全球领先的云计算解决方案
  • ​ssh免密码登录设置及问题总结
  • #在线报价接单​再坚持一下 明天是真的周六.出现货 实单来谈
  • $NOIp2018$劝退记
  • (四) Graphivz 颜色选择
  • (一一四)第九章编程练习
  • (转载)虚幻引擎3--【UnrealScript教程】章节一:20.location和rotation
  • .NET 4.0中使用内存映射文件实现进程通讯
  • .NET delegate 委托 、 Event 事件
  • .NET/C# 使用 SpanT 为字符串处理提升性能
  • .Net开发笔记(二十)创建一个需要授权的第三方组件
  • .NET学习教程二——.net基础定义+VS常用设置
  • .w文件怎么转成html文件,使用pandoc进行Word与Markdown文件转化
  • @selector(..)警告提示
  • [@Controller]4 详解@ModelAttribute
  • [ExtJS5学习笔记]第三十节 sencha extjs 5表格gridpanel分组汇总
  • [Flex][问题笔记]TextArea滚动条问题
  • [GN] Vue3快速上手1
  • [GN] 后端接口已经写好 初次布局前端需要的操作(例)
  • [NBIoT]NBIoT相关知识
  • [NET].NET Framework 3.5 SP1 真正的离线安装(转)
  • [PyTorch][chapter 64][强化学习-DQN]
  • [车联网安全自学篇] Android安全之检测APK中调试代码是否暴露敏感信息
  • [单片机框架][drivers层][bq25601] charger 电源管理
  • [公告]代码着色功能的一个Bug
  • [计算机网络]深度学习传输层TCP协议
  • [架构之路-258]:目标系统 - 设计方法 - 软件工程 - 软件设计 - 架构设计 - 软件架构与软件框架的详细比较
  • [经典] 在未排序数组中返回topK大的数
  • [论文笔记] Megtron_LM 0、报错:vscode调试无法传进去参数 launch.json文件获取args参数
  • [嵌入式系统-28]:开源的虚拟机监视器和仿真器:QEMU(Quick EMUlator)与VirtualBox、VMware Workstation的比较
  • [深度理解] 重启 Splunk Search Head Cluster