Ubuntu14.04或16.04下Hadoop及Spark的开发配置
对于Hadoop和Spark的开发,最常用的还是Eclipse以及Intellij IDEA. 其中,Eclipse是免费开源的,基于Eclipse集成更多框架配置的还有MyEclipse。Intellij分为Community版和Ultimate版,前者免费,后者付费。付费版同样是集成了更多的框架便于开发,主要是针对web开发人员。这里我们讲述两个IDE的配置方法,并推荐使用Intellij完成配置。首先需要明确的是,本文的配置是基于Java语言,基于Scala语言配置Spark开发环境在Intellij下是相似且简单的,这里略过不提。
1. Eclipse下配置Hadoop及Spark开发环境
1.1 配置Hadoop开发环境
在Eclipse下配置开发环境有三种方案。均亲测有效。
方案一:基于普通的Java项目
第一步,将插件hadoop-eclipse-plugin-2.6.0.jar放在eclispe的plugins目录下,启动eclipse后,新建普通Java项目,在项目中引入两个依赖包:hadoop-common-2.6.2.jar,hadoop-core-0.20.205.0.jar;
此处提供下载:链接:http://pan.baidu.com/s/1i4XOQsl 密码:gjqg
第二步,在Preferences 中配置Hadoop的安装地址,运行项目时程序能够自动加载Hadoop安装目录下的jar包,至此配置完成。
这种方案在运行时需要选择“Run on Hadoop”选项运行,hadoop-eclipse-plugin-2.6.0.jar插件将会根据第二步中配置的Hadoop路径寻找jar包,因此最终打包后的jar包也最小,最小是6MB左右。打包后的jar包当然也需要使用hadoop jar命令执行,不支持java -jar命令执行。
方案二:基于Map Reduce项目
第一步,将插件hadoop-eclipse-plugin-2.6.0.jar放在eclispe的plugins目录下,启动eclipse后,新建Project,选择Map Reduce Project建立新项目;
第二步,在Preferences 中配置Hadoop的安装地址,运行项目时程序能够自动加载Hadoop安装目录下的jar包,至此配置完成。
这种方案下不用配置依赖,因为项目已经按照你装好的Hadoop自动装填依赖的jar包。缺点是最终打包后的jar包比较大,最小也有40MB左右,因为包含着所有的需要的Hadoop jar包。正因如此,打包后的jar包既可以使用hadoop jar命令执行,也支持java -jar命令执行。
方案三:基于Maven构建项目
直接新建Maven项目,在项目根目录的pom.xml中添加基础的Hadoop依赖项,maven将会自动引入依赖。添加后可能如下所示。
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion> <groupId>malab</groupId>
<artifactId>hadoop</artifactId>
<version>1.0-SNAPSHOT</version>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.7</source>
<target>1.7</target>
</configuration>
</plugin>
</plugins>
</build> <!--这是需要的添加的依赖,按需添加,下面的只是基本配置-->
<dependencies>
<!--hadoop-->
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-client</artifactId>
<version>2.6.0</version>
</dependency>
</dependencies> </project>
添加后,静静等上几分钟(取决于网速),就配置完成了。
1.2 配置Spark开发环境:基于Maven构建项目(官网推荐)
在pom.xml中<dependencies></dependencies>添加依赖项(官网上有说明配置信息:http://spark.apache.org/docs/latest/programming-guide.html):
<dependencies>
<!--spark-->
<dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-core_2.11</artifactId>
<version>2.0.2</version>
</dependency>
<!--ml-->
<dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-mllib_2.10</artifactId>
<version>2.0.2</version>
</dependency>
<!--sql-->
<dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-sql_2.10</artifactId>
<version>2.0.2</version>
</dependency>
<!--streaming-->
<dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-streaming_2.10</artifactId>
<version>2.0.2</version>
</dependency>
<!--hive-->
<dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-hive_2.10</artifactId>
<version>2.0.2</version>
</dependency> <!--hadoop-->
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-client</artifactId>
<version>2.6.0</version>
</dependency>
</dependencies>
显然,以上配置把所有的spark常用的hadoop用到的jar包依赖都配置了。
2. Intellij下配置Hadoop及Spark开发环境(推荐)
由于Intellij下没有插件直接支持,因此推荐使用Maven构建。
第一步,新建project,选择maven,然后一路下一步,完成后配置pom.xml即可。pom.xml文件配置的<dependencies></dependencies>中的内容与1.2节中一致。
第二步,到此开发环境配置完成。
maven配置下导出的jar包会比较大,因为包含了很多maven配置的依赖。如果你想要小一点的导出结果,删除导出的maven依赖即可。当然,这个不是件特别重要的事。
愿世界和平。
Ubuntu14.04或16.04下Hadoop及Spark的开发配置的更多相关文章
- buntu14.04和16.04官方默认更新源sources.list和第三方源推荐(干货!)转
配置完成后: sudo apt-get update 安装和删除软件: sudo apt-get install sudo apt-get remove buntu14.04和16.04官方默认更新源 ...
- Change default network name (ens33) to old “eth0” on Ubuntu 18.04 / Ubuntu 16.04
Change default network name (ens33) to old “eth0” on Ubuntu 18.04 / Ubuntu 16.04 By Raj Last updated ...
- linux: ubuntu 14.04 和16.04 快速下载
由于官网服务器在国外,下载速度奇慢,所以我们可以利用阿里云镜像下载ubuntuubuntu 14.04:http://mirrors.aliyun.com/ubuntu-releases/14.04/ ...
- Ubuntu14.04或16.04下安装JDK1.8+Scala+Hadoop2.7.3+Spark2.0.2
为了将Hadoop和Spark的安装简单化,今日写下此帖. 首先,要看手头有多少机器,要安装伪分布式的Hadoop+Spark还是完全分布式的,这里分别记录. 1. 伪分布式安装 伪分布式的Hadoo ...
- Ubuntu16.04下Hadoop的本地安装与配置
一.系统环境 os : Ubuntu 16.04 LTS 64bit jdk : 1.8.0_161 hadoop : 2.6.4 部署时使用的用户名为hadoop,下文中需要使用用户名的地方请更改为 ...
- 阿里云,腾讯云,等等的云 Ubuntu14.04升级16.04
16.04有很多好处.在此不说了 这几天来回折腾了各种的云,然后发现国内的都没有16.04 但是ubuntu可以直接在线升级 在此记下来升级的过程 不管是腾讯云也好 阿里云也好,或者别的什么云,只要是 ...
- Ubuntu14.04和16.04官方默认更新源sources.list和第三方源推荐(干货!)
不多说,直接上干货! 写在前面:笔者由于还在学校学习,学校没有开发给Linux用的上网客户端,所以只能用在windows系统中通过安装虚拟机运行linux比较方便,但没有外网,只有学校的教育网,所以我 ...
- Ubuntu14.04或16.04下普通用户的root权限获得
Ubuntu系统默认不允许使用root登录,因此初始root帐户是不能使用的,需要在普通账户下利用sudo权限修改root密码.然后以root帐户进行相关操作. 具体操作: 1.打开系统,用普通帐户登 ...
- ubantu18.04下Hadoop安装与伪分布式配置
1 下载 下载地址:http://mirror.bit.edu.cn/apache/hadoop/common/stable2/ 2 解压 将文件解压到 /usr/local/hadoop cd ~ ...
随机推荐
- vs2013在使用ReportView11时遇到的问题
最近在做项目中用到2013中的ReportView11 在本机IIS中使用完全没问题 但是放到服务器上总是出问题 解决办法:(1)首先在自己机器上开发的时候 是不用引用 Microsoft.R ...
- 关于.NET知识体系结构图总结
转载:关于.NET知识体系结构图总结-零度http://www.xcode.me/book/net-framework-maps 最近对.NET框架方面的知识进行了概要的总结,整理了一些知识体系结构图 ...
- 跨域AJAX的实现
跨域 当试图从一个域向另一个域发起请求时 jsonp html中所有带src属性的标签都可以跨域,如:script,img,iframe 可以通过script加载其它域的一段动态脚本,这段脚本包含 ...
- CoreData __ 基本原理
操作过程 Context想要获取值,先要告诉连接器,我要什么东西 链接器再告诉store, 你给我什么东西, store去找 找到之后返回给链接器,链接器再返回给Context Co ...
- 111. for(元素变量x:遍历对象obj)
package com.chongrui.test;/* * for(元素变量x:遍历对象obj){ * 引用X的java语句 * * } * * * */public class test { ...
- Dump类型说明
通过使用windbg提供DbgHelp库中的MiniDumpWriteDump函数在程序崩溃时写dump文件记录程序当时状态,为后续分析问题提供现场. 该函数提供了DumpType参数,让程序员根据具 ...
- xplan.sql(本脚本获取执行计划显示执行顺序)
-- ---------------------------------------------------------------------------------------------- -- ...
- Mac下的类似apt-get的包管理工具Homebrew(笔记)
对于一个习惯了在 Ubuntu 的终端上通过 apt-get 来安装工具软件的我来说,也希望在Mac上找到类似的工具,能很方便的一条命令就能安装所需的软件,而不用手工的去查找下载编译,或者是折腾安装所 ...
- 【学习篇:他山之石,把玉攻】JavaScript Date() 对象 及 格式化
Date 对象用于处理日期和时间. 创建 Date 对象的语法: var myDate=new Date() Date 对象会自动把当前日期和时间保存为其初始值. 参数形式有以下5种: new ...
- CozyRSS开发记录-中断
接下来会对CozyRSS做一堆的修改,包括界面和功能.因为比较杂乱,而且大多是体力活,所以就不记录了.等下次再发的时候,见到的就是一个有可用性的CozyRSS了!