Spark2.2部署的麻烦事

     今天早上开开心心的打开了IDEA,新建了项目,导了包。却发现各种错误,一个错误接着一个错误。网上的教程真是。。。一个抄一个,仔细的找个bug之后,发现了太多如下的问题,一一解决,最后终于勉强运行成功了。

     为了少走坑,在仔细看了spark源码包的pom后,发现用的scala的版本是

                                                       

               

             避免冲突,下scala的版本也下这个。什么?!你说官网下的太慢了?没事!我搞个网盘    https://pan.baidu.com/s/1pMk7u0F 密码:zqxm

      好了,现在可以新建Maven项目了

              



      按照官网的提示,在pom里增加依赖

        

对~  一切就是这么的简单明了开心大方。。当我新建了一个object测试一下后


        简单的代码 就是遍历一下子 为啥给我抛个异常说缺包,而且这个包Maven都包括进去了




点开异常信息 缺告诉我这个包的这个类什么只读。。更加蒙圈了。。。(源码本来就是只读嘛!这只是加不进去而已)

百度上都说改变Maven的pom文件来改变这个包的版本,毫无卵用,导来导去我还是这个错误。既然Maven不好使就自己导一个包试试,下载commons-lang这个可恶的jar包

,还是为了避免不必要的麻烦,这次我退一个版本下个3.5的

点击项目--》摁键盘上的F4(或右键项目点Open Model Settings)--》


  把commons-lang导入到library。

还没有commons-lang这个包? 我也准备了

链接:https://pan.baidu.com/s/1pMqCXpp 密码:j6p7

接下来以为就这样就搞定了!

可是。。。。。。


和上一个异常一个毛病。。但是这次的包是

commons-collections   版本3.2.2

一样的操作来一遍,,我还是准备了包

链接:https://pan.baidu.com/s/1mjAvTdY 密码:l5ic

。。。。哇!总算忙完了,以为这样就万事大吉了,可是还有毛病


啊。。原来是winutils.exe啊,这个就好搞的多,把下载Hadoop配置环境变量,或者直接在Spartconf()下面加一条

System.setProperty("hadoop.home.dir","[你的Hadoop位置]")
Windows调试hadoop教程一大堆,这里就不赘述了,我直接用第二种方法
 
终于成功了。。。。。。。

---屁!

  在台式机成功了~但是在笔记本上又失败了

 
WARN Utils: Service 'sparkDriver' could not bind on port 0. Attempting port 1.
Cannot assign requested address: bind: Service 'sparkDriver' failed after 16 retries!
多么熟悉的bug啊~这不就是传说中的改Spark_env.sh 么 

   不就是加个 SPARK_LOCAL_IP=127.0.0.1 么

 是!完美解决~屁! 那是在Linux上面的完美解决~

 我在windows上面哪有Spark_env.sh啊! 

 于是~ 我遐想,下个Spark放在windows上配置一个环境变量??或者改Java虚拟机的代理列表

但是都是一一失败了。

 最后我还得感谢以为github上的一个老外,他的一句话点醒了我

```

在创建Sparkconf时加入

set("spark.driver.host", "192.168.1.103")

set("spark.driver.port", "7077")

```

虽然这不是必要的!但是在IDEA中调试,或者运行在单机中还是至关重要的!




专治Bug的我~~心灵上得到的充分的满足!
看更多傻瓜教程就上我GitHub:g5539220y.github.io
我是傻瓜~我的教程是傻瓜教程
                        -----假程序员