IDEA2017 maven Spark HelloWorld项目(本地断点调试)
2024-09-04 05:42:49
作为windows下的spark开发环境
1.应用安装 首先安装好idea2017 java8 scalaJDK spark hadoop(注意scala和spark的版本要匹配)
2.打开idea,创建建maven项目,如图所示
项目创建好后,记得勾选maven auto upate选项,这个动作会触发idea自动下载maven依赖的包
3.修改pom文件如下
<properties>
<scala.version>2.11.11</scala.version>
</properties> <dependencies>
<dependency>
<groupId>org.scala-lang</groupId>
<artifactId>scala-library</artifactId>
<version>${scala.version}</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.4</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.specs</groupId>
<artifactId>specs</artifactId>
<version>1.2.5</version>
<scope>test</scope>
</dependency>
</dependencies> <configuration>
<scalaVersion>${scala.version}</scalaVersion>
<args>
<arg>-target:jvm-1.8</arg>
</args>
</configuration>
4.删除test文件夹(因为会报junit等错误),在scala下创建新scala Object
并在Hello中加入main函数,最终Hello类如下
object Hello {
def main(args: Array[String]): Unit = {
println("main begin...............")
// 设置Spark的序列化方式
System.setProperty("spark.serializer", "org.apache.spark.serializer.KryoSerializer")
// 初始化Spark
val sparkConf = new SparkConf().setAppName("sparkDemo")
val sc = new SparkContext(sparkConf) val a = sc.parallelize(List(1,2,3,3))
val b = a.map(x => x+1) // textfileTest("C:/Users/think/Desktop/1.txt"); val colors = Map("red" -> "#FF0000",
"azure" -> "#F0FFFF",
"peru" -> "#CD853F") val nums: Map[Int, Int] = Map() println( "colors 中的键为 : " + colors.keys )
println( "colors 中的值为 : " + colors.values )
println( "检测 colors 是否为空 : " + colors.isEmpty )
println( "检测 nums 是否为空 : " + nums.isEmpty )
println("main end...............")
}
}
5.开始断点调试
点击main方法左侧篮框,将会触发debug过程
如果出现以下错误
org.apache.spark.SparkException: A master URL must be set in your configuration
需要在debug config中的vm options加入下面这一行参数
-Dspark.master=local
6.调试界面
最终调试界面如下
最新文章
- 通用PE工具箱 4.0精简优化版
- 【框架】RefreshListView下拉刷新
- php 购物车的例子
- web服务器的相关资料 ngix
- linux 防火墙iptables简明教程
- webdriver(python)学习笔记二
- 使用日志服务LogHub替换Kafka
- uCGUI窗口重绘代码分析
- 最全的TV视频应用合集,包含50多款客户端,有丰富直播点播
- 微信小程序实例教程(一)
- OpenGL 的空间变换(下):空间变换
- Oracle 11g服务器安装详细步骤——图文教程
- POJ1015 &;&; UVA - 323 ~Jury Compromise(dp路径)
- LeetCode之“数学”:Rectangle Area
- 2019-4-29 js学习笔记
- Java Web开发总结(一)
- Ubuntu fcitx CPU占用率很高解决方法
- 批量生成QRcode
- rabbitmq系列五 之远程过程调用(RPC)
- 基于NABCD评论作业-王者荣耀交流协会PSP DAILY
热门文章
- [WPF] 实现 WPF 的 Inner Shadow
- vim操作(复制,粘贴)
- layui(layer)的loading方法显示位置不居中
- DevOps实战(Docker+Jenkins+Git)
- 【九度OJ】题目1170:找最小数 解题报告
- 【LeetCode】794. Valid Tic-Tac-Toe State 解题报告(Python)
- 【LeetCode】802. Find Eventual Safe States 解题报告(Python)
- 【LeetCode】811. Subdomain Visit Count 解题报告(Python)
- Pikachu漏洞练习-SQL-inject(四)
- MCU变量加载过程