【Spark开发环境搭建流程】Windows版+运行Spark用例

举报
火羽 发表于 2022/05/27 16:11:08 2022/05/27
【摘要】 1. 环境准备 1.1 JDK 1.8 1.2 Scala 1.3 IntelliJ IDEA 1.4 安装Scala插件 1.5 Maven 1.6 Hadoop 2. 运行配置 2.1 添加Maven路径及配置文件 2.2 导入Scala SDK 2.3 勾选Maven Profiles中的依赖,点击生成source后刷新 2.4 打开Terminal,输入以下指令进行编译 2.5 运...

1. 环境准备

首先准备好环境依赖:JDK、Scala、IntelliJ IDEA、Maven、Hadoop

1.1 JDK 1.8

到官网/附件下载JDK1.8版本进行安装,设置环境变量

JAVA_HOME:C:\Program Files\Huawei\jdk1.8.0_262\
JRE_HOME:%JAVA_HOME%\jre
CLASS_PATH:.;%JAVA_HOME%\lib;

Path中添加

%JAVA_HOME%\bin
%JAVA_HOME%\jre\bin

1.2 Scala

官网/附件下载安装scala对应版本,并设置环境变量
Path中添加

C:\Program Files (x86)\scala\bin

1.3 IntelliJ IDEA

  • http://toolcloud.huawei.com/home 上下载intellig idea并安装

  • 申请LICENSE激活软件

  • 同时可以根据自己的PC条件将IDEA的VM内存设置的大一些提升运算性能,在IDEA安装目录下的bin中找到idea.exe.vmoptions配置文件

-Xms4096m  (最小内存)
-Xmx8192m  (最大内存)
-XX:ReservedCodeCacheSize=2048m
-XX:+UseG1GC
-XX:SoftRefLRUPolicyMSPerMB=50
-XX:CICompilerCount=2
-XX:+HeapDumpOnOutOfMemoryError
-XX:-OmitStackTraceInFastThrow
-ea
-Dsun.io.useCanonCaches=false
-Djdk.http.auth.tunneling.disabledSchemes=""
-Djdk.attach.allowAttachSelf=true
-Djdk.module.illegalAccess.silent=true
-Dkotlinx.coroutines.debug=off
  • 保存后重启IDEA即可

1.4 安装Scala插件

  • 若Marketplace为空,先配置IDEA代理

1.5 Maven

官网/附件下载安装Maven对应版本,并设置环境变量

MAVEN_HOME:D:\Huawei\Maven\apache-maven-3.8.5
Path:%MAVEN_HOME%\bin

1.6 Hadoop

由于需要在windows本地运行,因此需要Hadoop对应的Winutis.exe程序
可以从Github上/附件下载,并设置环境变量

HADOOP_HOMED:\Huawei\winutils-master\hadoop-3.1.0

2. 运行配置

依赖环境就绪后,准备首次运行Spark用例

2.1 添加Maven路径及配置文件

settings来源:
1. 项目cid路径下
2. 直接使用同事的配置文件

2.2 导入Scala SDK

2.3 勾选Maven Profiles中的依赖,点击生成source后刷新

2.4 打开Terminal,输入以下指令进行编译

mvn -s "D:\Huawei\Maven\settings.xml" clean package -P Kernel-hadoop-3.1,Windows,hive,hive-thriftserver,parquet-provided,orc-provided,hive-3.1 -DskipTests

2.5 运行examples用例

  • 修改运行设置
  • 添加VM选项,本地运行
  • 缩短文件路径
  • 运行用例

3. 常见问题

3.1 Excutable="bash"找不到文件

  • bash为linux运行指令,本地将bash修改为cmd即可

3.2 thread “main” java.lang.NoClassDefFoundError: scala/collection/Seq

  • 参照2.5修改运行设置添加VM选项为本地运行

3.3 org.apache.spark.SparkException: Could not find spark-version-info.properties

  • 本地编译不会生成该文件,自行在对应路径的resources中创建,并写入version参数

3.4 Did not find winutils.exe: {}

  • 参考1.6添加程序及环境变量

3.5 object XXX is not a member of package com.huawei.hadoop

  • 找不到对应的包或依赖,修改pom或profiles中的依赖版本,或替换可用的settings文件并刷新

3.6 XXX is already defined as object HiveCommonUtils

  • 重复定义,依赖冲突,手动将冲突的依赖版本mark为excluded
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。