MacOS使用IDEA+Maven+Scala+Spark进行本地调试
安装JDK
- 从这里下载Java 8的JDK
- 设置
JAVA_HOME
环境变量,在Mac上它大概会是/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/
这个样子
我选择的是在~/.bash_profile
文件里添加一句:
export JAVA_HOME=/path/to/JDK
,路径换成自己的JDK路径
安装Maven
Mac下用Brew
安装即可:
brew install maven
Intellij IDEA
以下基本跟spark开发环境搭建(基于idea 和maven)一样,详细可以去这里看
下载和安装
这个……去官网下载即可,学生可以申请学生账号,挺方便的
配置Intellij IDEA
-
安装scala插件: 打开Intellij IDEA右下角的
Configure
,然后选择Plugins
,搜索scala
插件并安装,安装完之后重启IDE。 -
设置全局JDK: 在我的IDEA版本里是选择
Structure for New Projects
,在弹出的界面依次选择Project-New-JDK
,把目录设置成跟JAVA_HOME
一样的目录 -
设置全局
Scala SDK
: 还是刚刚Structure for New Projects
的界面,在Global Libraries
选项卡下点+
后选择Scala SDK
,然后会弹出一个界面如下:
我不像那位Po主一样有
System
选项,所以需要选择Download
去下载一个SDK。!!!!!!!!这里有一个要点!!!!!!!!
注意一下你的Spark
是什么版本的,比如我用的Spark 2.1.2
,在官网上有这么一句:
所以下载的时候选择
2.11
版本的scala即可,太高和太低都有可能出问题= =,我之前下了2.13
出现跟这里一样的错误。下载完之后
Global Libraries
里就有这个sdk啦,然后在这个sdk上右键,点击Copy to Project Libraries
新建Maven项目
点新建项目,然后选择Maven项目,在右侧Project SDK
看看是不是成功配置了我们的JDK,然后设置好GroupId
,ArtifactId
和Version
运行scala程序
可以把main\java
, main\resources
和 test
都暂时删掉,它们的作用见这篇文章
将Scala的框架添加到这个项目中,方法是在左侧栏中的项目名称上右键菜单中点击
Add Framework Support…
,然后在打开的对话框左侧边栏中,勾选Scala
前面的复选框,然后点击确定即可。
我是不用单独再导入这个框架,直接做下一步就可以了
在
main
文件夹中建立一个名为scala
的文件夹,并右键点击scala
文件夹,选择Make Directory as
,然后选择Sources Root
,这里主要意思是将 scala 文件夹标记为一个源文件的根目录,然后在其内的所有代码中的 package ,其路径就从这个根目录下开始算起。
这一步非常重要!!!!! 不做这个下一步可能凉凉
在已经标记好为源文件根目录的 scala 文件夹 上,右键选择
New
,然后选择Scala Class
,随后设置好程序的名称,并且记得将其设置为一个Object
(类似于Java中含有静态成员的静态类),正常的话,将会打开这个Object
代码界面,并且可以看到IntelliJ IDEA自动添加了一些最基本的信息;
在Object元素内 输入:def main(args: Array[String]):Unit = { println("Hello World!") }
然后就可以Run
它,会输出结果。
调试Spark
首先要修改pom.xml
里导入相关依赖,注意scala和spark的版本要写对。每次修改完pom.xml
之后记得Import Changes
。点击右上角的Edit Configurations
:
设置一下VM参数:
然后就可以正常Run
了,理论上应该不会报错,如果有问题可以试试在terminal
里输入mvn clean
和mvn install
安装需要的依赖。