当前位置: 首页 > 编程日记 > 正文

win10 spark+scala+eclipse+sbt 安装配置

转载请务必注明原创地址为:http://dongkelun.com/2018/03/...

1、首先安装配置jdk1.8以上,建议全部的安装路径不要有空格

2、安装spark

2.1 下载

下载地址:http://spark.apache.org/downloads.html,我下载的是 spark-2.2.1-bin-hadoop2.7.tgz

2.2 安装

解压到指定路径下即可,比如 D:Companybigdataspark-2.2.1-bin-hadoop2.7

2.3 配置环境变量

在系统变量Path添加一条:D:Companybigdataspark-2.2.1-bin-hadoop2.7bin 即可

3、安装hadoop

3.1 下载

下载地址:https://archive.apache.org/dist/hadoop/common/(需要和spark对应的版本保持一致,我选择的hadoop-2.7.1.tar.gz)
(此链接下载较慢,可选择其他镜像下载其他版本如:http://mirror.bit.edu.cn/apache/hadoop/common/)

3.2 安装

解压到指定路径下即可,比如 D:Companybigdatahadoop-2.7.1

3.3 配置环境变量

在系统变量里添加 HADOOP_HOME:D:Companybigdatahadoop-2.7.1

3.4 下载winutils.exe

1.下载地址:https://github.com/steveloughran/winutils(找到对应的版本下载)

  1. 将其复制到 %HADOOP_HOME% 即D:Companybigdatahadoop-2.7.1bin

3.5 解决/temp/hive 不可写错误

执行以下语句:D:Companybigdatahadoop-2.7.1binwinutils.exe chmod 777 /tmp/hive 即可,参考:http://mangocool.com/1473838702533.html

3.6 运行验证spark

在命令行输入:spark-shell,出现如下图所示即为成功(其中warn信息已在日志配置文件里去掉)

4、安装对应版本的scala(scala-2.11.8.msi)

4.1 下载

下载地址:https://www.scala-lang.org/download/all.html

4.2 安装

一键式安装到指定目录:D:Companybigdatascala

4.3 配置环境变量

安装过程中已经自动配好

4.4 验证

输入scala -version 查看版本号 ,输入scala 进入scala的环境

5、在eclipse上安装scala插件

5.1安装

在Eclipse中选择Help->Install new Software

等待一会儿:

然后下一步下一步
中间有一个警告,点ok即可,最后根据提示重启eclipse即可安装完成

5.1运行scala程序

5.1.1 新建scala project


5.1.2 将默认的sacala版本改为之前安装的版本

5.1.3 编写salca程序,即可像运行java一样运行scala


6、安装sbt

6.1 下载(sbt-1.1.1.msi)

下载地址:https://www.scala-sbt.org/download.html

6.2 安装

一键式安装到指定目录:D:Companybigdatascala-sbt

6.3 配置环境变量

SBT_HOME=D:Companybigdatascala-sbt
path=%SBT_HOME%bin

6.3 配置本地仓库

编辑:conf/sbtconfig.txt

# Set the java args to high-Xmx512M-XX:MaxPermSize=256m-XX:ReservedCodeCacheSize=128m# Set the extra SBT options-Dsbt.log.format=true
-Dsbt.boot.directory=D:/Company/bigdata/scala-sbt/boot/
-Dsbt.global.base=D:/Company/bigdata/scala-sbt/.sbt
-Dsbt.ivy.home=D:/Company/bigdata/scala-sbt/.ivy2
-Dsbt.repository.config=D:/Company/bigdata/scala-sbt/conf/repo.properties

增加文件 conf/repo.properties

[repositories]  
local
Nexus osc : https://code.lds.org/nexus/content/groups/main-repo
Nexus osc thirdparty : https://code.lds.org/nexus/content/groups/plugin-repo/
typesafe: http://repo.typesafe.com/typesafe/ivy-releases/, [organization]/[module]/(scala_[scalaVersion]/)(sbt_[sbtVersion]/)[revision]/[type]s/[artifact](-[classifier]).[ext], bootOnly  
typesafe2: http://repo.typesafe.com/typesafe/releases/
sbt-plugin: http://repo.scala-sbt.org/scalasbt/sbt-plugin-releases/
sonatype: http://oss.sonatype.org/content/repositories/snapshots  
uk_maven: http://uk.maven.org/maven2/  
ibibli: http://mirrors.ibiblio.org/maven2/  
repo2: http://repo2.maven.org/maven2/

6.4 验证

输入:sbt
(第一次使用会下载复制一些文件)

7、安装eclipse的sbt插件:sbteclipse

sbteclipse是eclipse的sbt插件,但与一般eclipse插件的配置及使用并不相同。
sbteclipse项目源码托管在github上:https://github.com/typesafehub/sbteclipse

(7.1和7.2不确定是否是必须的,一台机器不需要,另一台因在~/.sbt文件下没有1.0和0.13文件夹,执行这两步即可)

7.1 下载项目

git clone https://github.com/sbt/sbteclipse.git

或下载zip再解压

7.2 编译

进入到sbteclipse目录下,输入

sbt compile

7.3 添加全局配置文件

新建:~/.sbt/1.0/plugins/plugins.sbt(网上好多说是:~/.sbt/0.13/plugins/plugins.sbt,但我两个电脑都不行)

addSbtPlugin("com.typesafe.sbteclipse" % "sbteclipse-plugin" % "5.2.4")

7.4 进入到之前创建的项目ScalaDemo目录下

添加sbt配置文件build.sbt

name := "ScalaDemo"version := "1.0"scalaVersion := "2.11.8"javacOptions ++= Seq("-source", "1.8", "-target", "1.8")libraryDependencies ++= Seq(
"org.apache.spark" %% "spark-core" % "2.2.1")

输入 sbt 然后输入eclipse 等待相关的依赖下载完,就可以在eclipse 看到依赖的jar了

7.5 最后将src bulid path 一下,就可以在scala代码里导入spark包了


8、 如果想调用本地spark,在SparkConf或者在SparkSession设置matser为local(本地模式)即可

相关文章:

jquery的live方法

live(type, [data], fn)手册API的介绍 jQuery 给所有匹配的元素附加一个事件处理函数,即使这个元素是以后再添加进来的也有效。 如下用 live给classclickme的元素绑定一个click事件: $(.clickme).live(click, function() { alert("Live handler ca…

碱基序列的儿子最长上涨

Font Size:Aa Aa AaDescription 给出一个由n个数组成的序列x[1..n]&#xff0c;找出它的最长单调上升子序列的长度。即找出最大的长度m和a1, a2……,am&#xff0c;使得 a1 < a2 < … … < am 且 x[a1] < x[a2] < … … < x[am]。Input 先输入一个整数t&…

用 Python 写 3D 游戏,太赞了

作者 | 可可卷CSDN博客 | 可可卷vizard介绍Vizard是一款虚拟现实开发平台软件&#xff0c;从开发至今已走过十个年头。它基于C/C&#xff0c;运用新近OpenGL拓展模块开发出的高性能图形引擎。当运用Python语言执行开发时&#xff0c;Vizard同时自动将编写的程式转换为字节码抽象…

人人都能学会的python编程教程3:字符串和编码

字符串 在python3中已经全面支持中文。 由于Python源代码也是一个文本文件&#xff0c;所以&#xff0c;当你的源代码中包含中文的时候&#xff0c;在保存源代码时&#xff0c;就需要务必指定保存为UTF-8编码。当Python解释器读取源代码时&#xff0c;为了让它按UTF-8编码读取&…

基本MVC原理

参考《Pro PHP》 简单实现了一个mvc框架。 地址http://code.google.com/p/smallframework/自动加载的问题<?php function __autoload($class) { if(file_exists($class.".php")) { require_once($class.".php"); } } class autoload{ public static fu…

31个好用的 Python 字符串方法,建议收藏!

作者 | 小F来源 | 法纳斯特字符串是Python中基本的数据类型&#xff0c;几乎在每个Python程序中都会使用到它。今天&#xff0c;就带大家学习一下31个最重要的内置字符串方法。希望大家能从中找到对自己有帮助的技巧。▍1、Slicingslicing切片&#xff0c;按照一定条件从列表或…

《深入理解计算机系统》读书随笔-位操作

最近开始读《深入理解计算机系统》这本书。对于书中提到的从程序员的角度解读计算机系统这一说法非常感兴趣&#xff0c;所以决定好好读一读。从开始接触计算机编程就是站在一个高级语言的层次&#xff0c;虽然对编译原理&#xff0c;操作系统&#xff0c;汇编语言和计算机组成…

专访小邪:从十年技术之路看阿里技术体系的变革

2019独角兽企业重金招聘Python工程师标准>>> 摘要&#xff1a; 从2008年到2018年&#xff0c;从阿里巴巴中间件团队到飞天八部——小邪与阿里的十年。 编者按&#xff1a;从2008年到2018年&#xff0c;从阿里巴巴中间件团队到飞天八部——小邪与阿里的十年。 2008年…

PHP SPL笔记

PHP SPL笔记作者&#xff1a; 阮一峰日期&#xff1a; 2008年7月 8日这几天&#xff0c;我在学习PHP语言中的SPL。这个东西应该属于PHP中的高级内容&#xff0c;看上去很复杂&#xff0c;但是非常有用&#xff0c;所以我做了长篇笔记。不然记不住&#xff0c;以后要用的时候&am…

算力超越 iPhone,芯片堪比Mac,网友:“买来能干啥?”

整理 | 郑丽媛出品 | CSDN&#xff08;ID&#xff1a;CSDNnews&#xff09;自去年“元宇宙”概念突然爆火&#xff0c;作为其“入门钥匙”的 AR/VR 设备也顺势成为了话题焦点&#xff0c;尤其在多家外媒爆料苹果也在为此发力、甚至从 Meta 挖人以争取在 2022 年正式推出时&…

ios开发日记- 5 屏幕截图

-(void)fullScreenshots{UIWindow *screenWindow [[UIApplication sharedApplication] keyWindow]; UIGraphicsBeginImageContext(screenWindow.frame.size);//全屏截图&#xff0c;包括window [screenWindow.layer renderInContext:UIGraphicsGetCurrentContext()]; UIImage …

MaxCompute助力OSS支持EB级计算力

一、 MaxCompute是什么&#xff1f; 你的OSS数据是否作堆积在一旁沉睡已久&#xff0c;存储成本变为企业负担&#xff1f;你是否想唤醒沉睡的数据&#xff0c;驱动你的业务前行&#xff1f;MaxCompute可以帮助你高效且低成本的解决这些问题&#xff0c;通过对海量数据进行分析和…

php自动加载

很多开发者写面向对象的应用程序时对每个类的定义建立一个 PHP 源文件。一个很大的烦恼是不得不在每个脚本&#xff08;每个类一个文件&#xff09;开头写一个长长的包含文件列表。 在 PHP 5 中&#xff0c;不再需要这样了。可以定义一个 __autoload 函数&#xff0c;它会在试…

22个案例详解 Pandas 数据分析/预处理时的实用技巧,超简单

作者 | 俊欣来源 | 关于数据分析与可视化今天小编打算来讲一讲数据分析方面的内容&#xff0c;整理和总结一下Pandas在数据预处理和数据分析方面的硬核干货&#xff0c;我们大致会说Pandas计算交叉列表Pandas将字符串与数值转化成时间类型Pandas将字符串转化成数值类型Pandas当…

《mysql性能调优与架构设计》笔记: 一mysql 架构组成

2019独角兽企业重金招聘Python工程师标准>>> 2.1mysql物理文件组成 2.1.1日志文件&#xff1a; 1&#xff0c;查看mysql配置文件&#xff1a;mysql --verbose --help | grep -A 1 Default options; 1&#xff0c;错误日志&#xff1a;--log-error[file_name] 指定错…

发现一个可以搜索常用rpm包的地址(http://www.rpmfind.net/)

http://www.rpmfind.net/ 虽然资源不多&#xff0c;但也够用。 >如有问题&#xff0c;请联系我&#xff1a;easonjim#163.com&#xff0c;或者下方发表评论。<

PHP版UTF-8文件BOM自动检测移除程序

BOM信息是文件开头的一串隐藏的字符&#xff0c;用于让某些编辑器识别这是个UTF-8编码的文件。但PHP在读取文件时会把这些字符读出&#xff0c;从而形成了文件 开头含有一些无法识别的字符的问题。比如用UTF-8格式保存的生成图片的PHP文件&#xff0c;因为文件头隐藏的BOM信息也…

java: web应用中不经意的内存泄露

前面有一篇讲解如何在spring mvc web应用中一启动就执行某些逻辑&#xff0c;今天无意发现如果使用不当&#xff0c;很容易引起内存泄露&#xff0c;测试代码如下&#xff1a; 1、定义一个类App package com.cnblogs.yjmyzz.web.controller;import java.util.Date;public class…

「游戏圈地震级消息」687亿美元,微软收购游戏巨头动视暴雪

整理 | 苏宓、禾木木 出品 | CSDN 2022年1月18日晚&#xff0c;一条热搜刷爆了朋友圈&#xff1a; 继 2018 年&#xff0c;微软以 75 亿美元收购全球知名的代码托管平台 GitHub 后&#xff0c;2022 年 1 月 18 日&#xff0c;微软将以 687 亿美元的价格收购著名游戏制作和发行公…

java实现用户登录注册功能(用集合框架来实现)

需求&#xff1a;实现用户登录注册功能(用集合框架来实现) 分析&#xff1a; A:需求的类和接口 1.用户类 UserBean 2.用户操作方法接口和实现类 UserDao UserDaoImpl 3.测试类 UserTest B:各个类中的东西 1.用户类UserBean: …

第3次翻译了 Pandas 官方文档,叒写了这一份R万字肝货操作!

作者 | 黄伟呢来源 | 数据分析与统计学之美今天&#xff0c;我继续为大家讲述Pandas如何实现R语言的相关操作。由于 Pandas 旨在提供人们使用 R 进行的大量数据操作和分析功能&#xff0c;因此本页开始提供更详细的 R 语言及其与 Pandas 相关的许多第三方库的介绍。与 R 和 CRA…

PHP autoload机制详解

PHP autoload机制详解 转载自 jeakcccPHP autoload机制详解(1) autoload机制概述在使用PHP的OO模式开发系统时&#xff0c;通常大家习惯上将每个类的实现都存放在一个单独的文件里&#xff0c;这样会很容易实现对类进行复用&#xff0c;同时将来维护时也很便利。这 也是OO设计…

有关博客的一些断想

作者&#xff1a;朱金灿来源&#xff1a;http://blog.csdn.net/clever101随着微博、微信等短平快社交媒体的兴起&#xff0c;文字相对严肃的博客毫无疑问受到很大的冲击。我在想博客会不会因此而消亡呢。我相信不会&#xff0c;因为喜欢轻快的文字固然是人类的天性&#xff0c;…

pythonl学习笔记——爬虫的基本常识

1 robots协议 Robots协议&#xff08;也称为爬虫协议、机器人协议等&#xff09;的全称是“网络爬虫排除标准”&#xff08;Robots Exclusion Protocol&#xff09;&#xff0c;网站通过Robots协议告诉搜索引擎哪些页面可以抓取&#xff0c;哪些页面不能抓取。 如&#xff1a; …

hibernate相关收集

2019独角兽企业重金招聘Python工程师标准>>> 1、Hibernate SQL方言 如果出现如下错误&#xff0c;则可能是Hibernate SQL方言 (hibernate.dialect)设置不正确。 Caused by: java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC][SQLServer]last_ins…

盘一盘 2021 年程序员们喜欢的网站数据

作者 | 周萝卜来源 | 萝卜大杂烩世界上流量最大的网站有哪些&#xff0c;也许我们都能脱口而出&#xff0c;比如 Google&#xff0c;YouTube&#xff0c;Facebook 还有 PxxnHub 等等&#xff0c;今天我们就通过多个维度来看看&#xff0c;那些叱咤全球的流量网站&#xff01;数…

烽火18台系列之十一:刚需中的刚需——网站篡改监控

网站篡改事件近些年来越演越烈&#xff0c;其中包括政府、教育、金融、事业企业单位等。根据国家互联网应急响应中心发布的《2015年中国互联网网络安全报告》中指出&#xff0c;“2015年CNCERT/CC工检测到境内被篡改的网站数量为24550个&#xff0c;其中境内政府网站篡改数量为…

Http与RPC通信协议的比较

OSI网络结构的七层模型 各层的具体描述如下&#xff1a;第七层&#xff1a;应用层 定义了用于在网络中进行通信和数据传输的接口 - 用户程式&#xff1b;提供标准服务&#xff0c;比如虚拟终端、文件以及任务的传输 和处理&#xff1b; 第六层&#xff1a;表示层 掩…

基于 Python 和 OpenCV 构建智能停车系统

作者 | 努比来源 | 小白学视觉当今时代最令人头疼的事情就是找不到停车位&#xff0c;尤其是找20分钟还没有找到停车位。根据复杂性和效率的不同&#xff0c;任何问题都具有一个或多个解决方案。目前智能停车系统的解决方案&#xff0c;主要包括基于深度学习实现&#xff0c;以…

js获取鼠标位置

1.PageX/PageX:鼠标在页面上的位置,从页面左上角开始,即是以页面为参考点,不随滑动条移动而变化2.clientX/clientY:鼠标在页面上可视区域的位置,从浏览器可视区域左上角开始,即是以浏览器滑动条此刻的滑动到的位置为参考点,随滑动条移动 而变化. 可是悲剧的是,PageX只有FF…