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安装与配置(Windows、MacOS(arm64与inter)、Linux)_zulu jdk_javgo.cn的博客-CSDN博客
Java Downloads | Oracle
参考jdk下载总需要登录Oracle官网怎么办?_下载jdk要oracle账户_金玉满堂@bj的博客-CSDN博客
工具地址:oracle.com passwords - BugMeNot.
1)查看JDK安装是否成功
java -version
2)查看安装目录
方法一:聚焦搜索 /Library/Java/JavaVirtualMachines
参考如何在Mac中找到jdk的安装路径_mac查看jdk安装位置_乌海黑的博客-CSDN博客
方法二
/user/libexec/java_home -V
3)配置路径
// 1,编辑文件
vi ~/.zshrc
// 2,输入配置
JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk-1.8.jdk/Contents/Home
PATH=$JAVA_HOME/bin:$PATH:.
CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:.
export JAVA_HOME
export PATH
export CLASSPATH
// 3,激活
source ~/.zshrc
// 4,查看配置
java -version
Scala 2.12.15 | The Scala Programming Language
下载的压缩包解压后移动到目标目录
// 1,编辑文件
vi ~/.zshrc
// 2,输入配置
export SCALA_HOME=安装包地址
export PATH=$PATH:$SCALA_HOME/bin
// 3,激活
source ~/.zshrc
Index of /dist/maven/maven-3/3.6.3/binaries
// 1,编辑文件
vi ~/.zshrc
// 2,输入配置
export M2_HOME=安装包地址
export PATH=$PATH:$M2_HOME/bin
// 3,激活
source ~/.zshrc
// 4,验证
mvn -v
// 5,setting.xml
配置阿里云镜像
nexus-aliyun
central
Nexus aliyun
http://maven.aliyun.com/nexus/content/groups/public
配置本地仓库地址
/Users/didi/mine/software/maven/repository
参考【macOS】mac电脑M2芯片安装Homebrew 最简单的方法_macos安装homebrew_鱼仔是个NaN的博客-CSDN博客
// 1,下载命令
/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"
// 2,查看Homebrew版本
brew -v
// 3,安装git
brew install git
// 4,查看git版本
git version
// 1,创建spark源码存储目录,并将其设置为当前文件路径
/software/idea/code/spark
// 2,下载spark源码
git clone https://github.com/apache/spark
// 3,进入/software/idea/code/spark/spark 目录
// 4,查看远程分支
git branch -a
// 5,切换至saprk3.2
git checkout remotes/origin/branch-3.2
// 6,编译源码
mvn clean package -Phive -Phive-thriftserver -Pyarn -DskipTests
编译成功!
进入spark-shell
./bin/spark-shell
对spark-shell感兴趣的朋友可以跟着官方文档的demo跑一下看看
Quick Start - Spark 3.5.0 Documentation
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后问题解决
详细参考【spark2】【源码学习】【环境编译】在idea导入spark源码,执行example并debug_spark example idea_kyle0349的博客-CSDN博客
// VM options
-Dspark.master=local
我自己的配置结果如下(不同IDEA版本,配置界面稍有不同)
跟spark相关的【java.lang.ClassNotFoundException】,原因都是example module中pom.xml spark的依赖scope是provided。
如果上面“Include dependencies with Provided scope”没有起作用
最简单的方法,将pom文件中所有provided行注释掉
还没有起作用的话,试试刷新缓存
以下内容来自@来自遥远的水星【Spark源码01【搭建Spark源码调试环境】】
1)cmd + o
搜索SqlBase.g4文件,会提示你安装ANTLR v4
插件, 重启idea
2)配置ANTLR V4
插件
放一张我这边配置完成后的截图
完结撒花✿✿ヽ(°▽°)ノ✿