# 写在前面:

准备开始学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. 用 JS 设置图片的最大宽度

    //用 JS 设置图片的最大宽度    function setImgsMaxWidth() {        $('.answerimg img').each(function () {       ...

  2. 在Java、Web和移动开发方面最值得关注的12大开源框架

    在这篇文章中,我将分享一些值得开发者学习的优秀框架,以提高他们在移动开发.Web 开发以及大数据方面的开发技能. 1.AngularJS 这是一个JavaScript框架,我已经把它加入到我的2018 ...

  3. ABAP游标

    DATA: BEGIN OF count_line, carrid TYPE spfli-carrid, count TYPE i, END OF count_line, spfli_tab TYPE ...

  4. CSS text-decoration 属性

    定义和用法 text-decoration 属性规定添加到文本的修饰. 注释:修饰的颜色由 "color" 属性设置. 说明 这个属性允许对文本设置某种效果,如加下划线.如果后代元 ...

  5. docker实战系列之快速删除docker中的容器

    1.停用全部运行中的容器 docker stop $(docker ps -q) 2.删除全部容器 docker rm $(docker ps -aq) 3.停用并删除容器 docker stop $ ...

  6. 由于 Exception.tostring()失败,因此无法打印异常字符串

    console程序执行错误时,不显示异常信息. 解决方法: 在命令行修改显示字符格式  chcp 936

  7. jQuery封装 写的的确不错 转载

    扩展jQuery插件和方法的作用是非常强大的,它可以节省大量开发时间.这篇文章将概述jQuery插件开发的基本知识,最佳做法和常见的陷阱. 入门 编写一个jQuery插件开始于给jQuery.fn加入 ...

  8. linux network

    Linux 1◆ 提供连接     2◆ connection baidu.com 3◆ vm tools install Reboot    

  9. py 正在爬取第%d页的美眉图

    #coding=utf-8import reimport requestsfrom bs4 import BeautifulSoupnums = 1num = 1while True: url = & ...

  10. js之DOM元素遍历

    对于元素间的空格,IE9之前的版本不会返回文本节点,而且他所有浏览器都会返回文本节点.这样就导致 使用childNodes和firstChild等属性时的行为不一致.从而有了Element Trave ...