最近工作中需要将scala文件打成jar包放到spark集群上运行,看网上参考资料不多,故将自己的实践与大家分享。
闲话少叙,直接开干:
准备工作:
1.Java,在windows配置Java环境的相关教程已经太多了,直接去官网下载就好(不过现在要提供个人信息才能下载了,吐槽一下),唯一要注意的就是Java版本需要是1.8,在进行下一步之前务必使用 java -version 验证一下Java的版本
2.Scala,安装Scala可以直接去官网查看教程,要注意的一点就是直接看在IDEA中安装Scala的教程就好
这里主要安装的有IDEA的scala插件,在第一次创建Project时需要下载Scala的SDK,这个IDEA会提醒你下载,很方便,点击下载就好。再多说一句就是如果是第一次安装IDEA的话,安装的时候是可以选择安装Scala模块的,选择安装的,那就自动吧scala插件安装好了,如果第一次没有安装的话就去插件中心搜索安装就好,不过可能要科学上网哦~
创建新项目
创建项目在上面官网的链接中也有介绍,这里只是说几个注意点就好:
首先选择创建Scala项目,右侧选择IDEA
Scala SDK就是第一次会提醒你下载哦~
之后填好参数就OK了
这里再讲一下如何导入spark包(博主自己就导入了):
File =》 Project Structure =》 Libraries,点击+Java,添加jar包文件就好了。
打jar包:
完成前面的工作,就可以开始编写scala脚本了,写完可以Build一下(Run一下),没有问题就可以开始打jar包了:
File =》 Project Structure =》Artifacts
接着填入相关信息:
Main Class那里建议点击一下右侧的那个文件符号,会自动搜索Project中的类,选择你想要的class就好
之后点击OK就会出现jar的信息:
这里你可以直接选择OK就可以,但是这也意味着,你所import的jar包也会被打进目标jar里,显然导致最终的jar包很大,如果spark集群上没有这些jar包当然需要打进去,但如果有了的话,那就将那些Extracted的jar用去掉,这样得到的jar就小很多,此时可以看到src文件下多了一个新文件夹META-INF。
接着Build就好,具体步骤是:
Build => Build Artifacts
选择对应的jar包,build就好,编译完成,就会在out/artifacts/下看到得到的jar包。
至此,就完成了scala文件打jar的工作,nice~
参考资料:
https://blog.csdn.net/freecrystal_alex/article/details/78296851
https://blog.csdn.net/xiangxizhishi/article/details/75947976