当前位置:   article > 正文

M2 MacbookPro配置Spark源码运行环境_mac spark环境搭建

mac spark环境搭建

零、版本信息

MacBook:MacBook Pro M2

JDK:1.8.0_381

Scala:2.12.15

Maven:3.6.3

Homebrew:4.1.12(可选,下载Git需要)

Git:2.42.0(下载Spark源码需要)

Spark:3.2.5

整体配置流程参考@来自遥远的水星【Spark源码01【搭建Spark源码调试环境】】

一、JDK安装

参考一站式JDK安装与配置(Windows、MacOS(arm64与inter)、Linux)_zulu jdk_javgo.cn的博客-CSDN博客

1,安装地址

Java Downloads | Oracle

 

2,跳过Oracle登录限制

参考jdk下载总需要登录Oracle官网怎么办?_下载jdk要oracle账户_金玉满堂@bj的博客-CSDN博客

工具地址:oracle.com passwords - BugMeNot.

3,配置环境

1)查看JDK安装是否成功

java -version

2)查看安装目录

方法一:聚焦搜索 /Library/Java/JavaVirtualMachines

参考如何在Mac中找到jdk的安装路径_mac查看jdk安装位置_乌海黑的博客-CSDN博客

方法二

/user/libexec/java_home -V

3)配置路径

  1. // 1,编辑文件
  2. vi ~/.zshrc
  3. // 2,输入配置
  4. JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk-1.8.jdk/Contents/Home
  5. PATH=$JAVA_HOME/bin:$PATH:.
  6. CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:.
  7. export JAVA_HOME
  8. export PATH
  9. export CLASSPATH
  10. // 3,激活
  11. source ~/.zshrc
  12. // 4,查看配置
  13. java -version

二、Scala安装

1,安装地址

Scala 2.12.15 | The Scala Programming Language

 

2,配置环境

下载的压缩包解压后移动到目标目录

  1. // 1,编辑文件
  2. vi ~/.zshrc
  3. // 2,输入配置
  4. export SCALA_HOME=安装包地址
  5. export PATH=$PATH:$SCALA_HOME/bin
  6. // 3,激活
  7. source ~/.zshrc

三、Maven安装

1,安装地址

Index of /dist/maven/maven-3/3.6.3/binaries

2,配置环境

  1. // 1,编辑文件
  2. vi ~/.zshrc
  3. // 2,输入配置
  4. export M2_HOME=安装包地址
  5. export PATH=$PATH:$M2_HOME/bin
  6. // 3,激活
  7. source ~/.zshrc
  8. // 4,验证
  9. mvn -v
  10. // 5,setting.xml
  11. 配置阿里云镜像
  12. <mirrors>
  13. <mirror>
  14. <id>nexus-aliyun</id>
  15. <mirrorOf>central</mirrorOf>
  16. <name>Nexus aliyun</name>
  17. <url>http://maven.aliyun.com/nexus/content/groups/public</url>
  18. </mirror>
  19. </mirrors>
  20. 配置本地仓库地址
  21. <localRepository>/Users/didi/mine/software/maven/repository</localRepository>

四、Homebrew、Git安装(可选)

参考【macOS】mac电脑M2芯片安装Homebrew 最简单的方法_macos安装homebrew_鱼仔是个NaN的博客-CSDN博客

  1. // 1,下载命令
  2. /bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"
  3. // 2,查看Homebrew版本
  4. brew -v
  5. // 3,安装git
  6. brew install git
  7. // 4,查看git版本
  8. git version

 

五、下载&编译Spark源码

  1. // 1,创建spark源码存储目录,并将其设置为当前文件路径
  2. /software/idea/code/spark
  3. // 2,下载spark源码
  4. git clone https://github.com/apache/spark
  5. // 3,进入/software/idea/code/spark/spark 目录
  6. // 4,查看远程分支
  7. git branch -a
  8. // 5,切换至saprk3.2
  9. git checkout remotes/origin/branch-3.2
  10. // 6,编译源码
  11. mvn clean package -Phive -Phive-thriftserver -Pyarn -DskipTests

编译成功!

进入spark-shell

./bin/spark-shell

对spark-shell感兴趣的朋友可以跟着官方文档的demo跑一下看看

Quick Start - Spark 3.5.0 Documentation

 

六、导入IDEA&测试

1,导入源码

Menu -> File -> Open -> {spark dir}/pom.xml -> Open as Project

如果右边import包时飘红,但是示例可以正常运行,可以试试这里的方法IDEA “Cannot resolve symbol XXXX” 解决办法 (4种解决方案)_idea cannot resolve symbol_北街风的博客-CSDN博客

我是中途切换了一次IDEA版本(从2023.2切换到2020.3),删除.idea目录,重新打开项目,Open as Project后问题解决

2,配置测试用例Application(包括主类、VM options等)

详细参考【spark2】【源码学习】【环境编译】在idea导入spark源码,执行example并debug_spark example idea_kyle0349的博客-CSDN博客

  1. // VM options
  2. -Dspark.master=local

我自己的配置结果如下(不同IDEA版本,配置界面稍有不同)

3,debug

跟spark相关的【java.lang.ClassNotFoundException】,原因都是example module中pom.xml spark的依赖scope是provided。

如果上面“Include dependencies with Provided scope”没有起作用

最简单的方法,将pom文件中所有provided行注释掉

还没有起作用的话,试试刷新缓存

4,安装Antlr插件

以下内容来自@来自遥远的水星【Spark源码01【搭建Spark源码调试环境】】

1)cmd + o 搜索SqlBase.g4文件,会提示你安装ANTLR v4插件, 重启idea 

2)配置ANTLR V4插件

放一张我这边配置完成后的截图

完结撒花✿✿ヽ(°▽°)ノ✿

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号