# 写在前面:

准备开始学spark,于是准备在IDE配一个spark的开发环境。

嫌这篇格式不好的看这里链接

用markdown写的,懒得调格式了,么么哒

# 相关配置:

## 关于系统

* mac os10.12

* intellj IDEA

## 关于我

* scala&函数式编程零基础

* 会hadoop, java, maven

# 失败的经验1

* 脑子一热,用sbt替换了maven。但事实是

  1. 国内的sbt自动下载慢哭(用maven配国内镜像简直快到飞起,感谢阿里爸爸

  2. sbt的依赖配置总是报各种bug,要根据stackoverflow去补很多依赖(事实证明用maven只要一条依赖

* 而由于sbt需要的很多依赖之间兼容性并不好,每次修改都是一次漫长的等待。最后最崩溃的是还会产生冲突

# 成功的经验

* 心累之下还是回归了maven

* 有一个一定要注意的是scala2.12版本及以上跟spark各个版本都不兼容(至少目前是这样)

* 我先装的scala是2.12.2, 为此重新下了个2.10.3,并将2.10.3作为intellj的默认scala,sdk

* 记得配maven的ali镜像,爽到飞(修改maven的conf目录下的setting.xml,修改完记得intellj的maven设置也用这个配置

* 事实证明maven中只需要在pom.xml中添加如下一个依赖,

    <dependencies>
<!-- https://mvnrepository.com/artifact/org.apache.spark/spark-core_2.10 -->
<dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-core_2.10</artifactId>
<version>2.1.0</version>
</dependency>
</dependencies>

# 顺便给个scala的spark wordcount

object Test {
def main(args: Array[String]) {
// println("Hello World")
val conf = new SparkConf()
.setAppName("Test")
.setMaster("local") val sc = new SparkContext(conf) val text = sc.textFile("input/") val counts = text.flatMap(line => line.split("\t"))
.map(word => (word, 1))
.reduceByKey(_+_) counts.foreach(println)
}
}

最后祝学spark愉快!~

<spark入门><Intellj环境配置><scala>rk入门><Intellj环境配置><scala>的更多相关文章

  1. scala 入门Eclipse环境搭建及第一个入门经典程序HelloWorld

    scala 入门Eclipse环境搭建及第一个入门经典程序HelloWorld 学习了: http://blog.csdn.net/wangmuming/article/details/3407911 ...

  2. Spark记录-scala快速入门

    1.hello world程序 object HelloWorld { def main(args: Array[String]) { println("Hello,World!" ...

  3. Spring Boot 入门系列(二十四)多环境配置,3分钟搞定!

    之前讲过Spring Boot 的系统配置和自定义配置,实现了按照实际项目的要求配置系统的相关熟悉.但是,在实际项目开发过程中,需要面对不同的环境,例如:开发环境,测试环境,生产环境.各个环境的数据库 ...

  4. Scala 学习之路(一)—— Scala简介及开发环境配置

    一.Scala简介 1.1 概念 Scala全称为Scalable Language,即“可伸缩的语言”,之所以这样命名,是因为它的设计目标是希望伴随着用户的需求一起成长.Scala是一门综合了面向对 ...

  5. Scala 系列(一)—— Scala 简介及开发环境配置

    一.Scala简介 1.1 概念 Scala 全称为 Scalable Language,即"可伸缩的语言",之所以这样命名,是因为它的设计目标是希望伴随着用户的需求一起成长.Sc ...

  6. Mycat 中间件配置初探与入门操作

    Mycat中间件配置初探与入门操作 By:授客 QQ:1033553122 实践环境 Mycat-server-1.5.1-RELEASE-20161130213509-win.tar.gz 下载地址 ...

  7. 【福利】送Scala语言入门视频学习资料

    没有套路真的是送!! 想要学好大数据,scala语言是必不可少的,spark和kafka等大数据重要组件都是用scala写的,想要彻底搞懂这些组件是如何运作的必须得看源码,而学习scala是看源码的必 ...

  8. Jenkins入门系列之——02第二章 Jenkins安装与配置

    2014-12-08:已不再担任SCM和CI的职位,Jenkins的文章如无必要不会再维护. 写的我想吐血,累死了. 网页看着不爽的,自己去下载PDF.有问题请留言! Jenkins入门系列之——03 ...

  9. 安卓自动化测试(2)Robotium环境搭建与新手入门教程

    Robotium环境搭建与新手入门教程 准备工具:Robotium资料下载 知识准备: java基础知识,如基本的数据结构.语法结构.类.继承等 对Android系统较为熟悉,了解四大组件,会编写简单 ...

随机推荐

  1. Mybatis中int insertSelective()的相关问题

    1.selective的意思是:选择性2.insertSelective--选择性保存数据:比如User里面有三个字段:id,name,age,password但是我只设置了一个字段:User u=n ...

  2. 『MXNet』im2rec脚本使用以及数据读取

    一.im2rec用法简介 首先看文档: usage: im2rec.py [-h] [--list] [--exts EXTS [EXTS ...]] [--chunks CHUNKS] [--tra ...

  3. 4月18 数据库的CRUD操作

    php主要是实现B/S Brower Server;此外还有C/S:Client Server暂时不考虑: LAMP: Linux系统 A阿帕奇服务器 Mysql数据库 Php语言,而现在学的是在wi ...

  4. vivado实现模16的计数器

    `timescale 1ns / 1ps module ctr_mod_16( clk, rst_n, count ); input clk, rst_n; :] count; wire clk, r ...

  5. xlrd 安装步骤

    官网 https://pypi.python.org/pypi/xlrd 下载 解压 执行python setup.py install进行安装 --------------------------- ...

  6. Nodejs--util模块

    util.inspect util.inspect是一个将任意对象转换 为字符串的方法,通常用于调试和错误输出. 它至少接受一个参数 object,即要转换的对象. util.inspect(obje ...

  7. 把旧系统迁移到.Net Core 2.0 日记 (15) --Session 改用Redis

    安装Microsoft.Extensions.Caching.Redis.Core NuGet中搜索Microsoft.Extensions.Caching.Redis.Core并安装,此NuGet包 ...

  8. shiro jwt 构建无状态分布式鉴权体系

    一:JWT 1.令牌构造 JWT(json web token)是可在网络上传输的用于声明某种主张的令牌(token),以JSON 对象为载体的轻量级开放标准(RFC 7519). 一个JWT令牌的定 ...

  9. CentOS下安装mysql5.7和mysql8.x

    5.7和8.15版本亲测.centos版本为:CentOS-7-x86_64-Minimal-1810. 1.下载mysql57-community-release-el7-9.noarch.rpm. ...

  10. prefix word se sub suc sup suf sur out~s

    1★ se 区分开,分开 ,离开   2★ sub 接近,靠近,次一等 ,次的   3★ suc 4★ sup   5★ suf     6★ sur 在~下面