写在前面

具体安装流程可以参考:
Spark在Windows下的环境搭建
以及python+pycharm+pyspark+windows搭建spark环境+各种踩坑

我的问题

已安装spark、jdk、hadoop、scala,java、scala、hadoop都能通过cmd打开,但是始终无法成功打开spark-shell
在这里插入图片描述

寻找问题

我的JAVA_HOME、SPARK_HOME都是自定义的,结尾有一个分号之前一直也没觉得有什么问题。在这里插入图片描述在这里插入图片描述
而且我在cmd打java是可以正确显示的,所以我一直以为我的JAVA_HOME设置的是对的。直到我打javac无法显示,我才发现有问题
我仔细看了环境变量path的值,发现第一行有一个“C:\Program Files (x86)\Common Files\Oracle\Java”,而这个路径下是有java.exe的! 然后看这个修改日期我意识到这是我今天早上重新装的jdk自动加的路径。

在这里插入图片描述

在这里插入图片描述
也就是说,之前打java正确运行根本就不是走的我设置的JAVA_PATH,而是安装时自动设置的环境变量!
在我将这个自动加的变量去掉以后,果然,在cmd输入java也提示无法打开
在这里插入图片描述
所以,是JAVA_HOME的设置问题! 我仔细观察了JAVA_HOME与其他原有变量的区别,发现最大的区别就是多了个分号,于是我尝试将分号去掉,果然就成功了!
在这里插入图片描述
然后我就注意到原来只有JAVA_HOME和SPARK_HOME这两个变量我设置的时候加了分号,而HADOOP_HOME和SCALA_HOME我都没加(所以这两个运行正常)
于是立刻马上也把SPARK_HOME的末尾分号去掉,去除的方法如下:
在这里插入图片描述
在这里插入图片描述
然后就,成功啦!
在这里插入图片描述

一些tips

至此,我的环境安装终于结束了,因为一个小小的分号,我已经配了三天环境了…
有一些小点提醒正在配环境的人:

  • 使用pyspark还需要安装jdk、scala、hadoop
  • 注意以上这些软件的版本匹配,我建议跟着一篇博客然后全部照着他的装
  • 装老版本就行啦 不用追新
  • 注意jdk用的都是jdk8 版本太高好像会不兼容
  • hadoop 显示Please update D:\App\hadoop-3.2.2\etc\hadoop\hadoop-env.cmd DEPRECATED时很可能是你下载的源文件是需要修改的,参考hadoop 显示Please update D:\App\hadoop-3.2.2\etc\hadoop\hadoop-env.cmd DEPRECATED
    就这样,祝大家早日脱离苦海
Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐