windows下利用eclipse+maven连接虚拟机上的hadoop

来源:互联网 发布:淘宝众筹赚钱吗 编辑:程序博客网 时间:2024/06/09 02:55

按照以下链接,在windows上搭建eclipse+maven连接虚拟机上的hadoop时,出现一些问题。

http://blog.fens.me/hadoop-maven-eclipse/

问题1:

按照文章步骤,采用hadoop-core 1.0.3登陆远程Hadoop 2.0.0-cdh4.1.1时出现Server IPC version 7 cannot communicate with client version 4问题,原因是本地的hadoop-core版本太低,因此需要重新配置pom.xml

主要是需要以下两个依赖包:
需要在pom.xml里面配置cloudera的repo和相关的jar包
hadoop-common-2.0.0-cdh4.1.1.jar
hadoop-core-2.0.0-mr1-cdh4.1.1.jar

相关网站:
http://www.cloudera.com/documentation/archive/cdh/4-x/4-7-1/CDH-Version-and-Packaging-Information/cdhvd_topic_8.html
http://www.cloudera.com/documentation/archive/cdh/4-x/4-7-1/CDH-Version-and-Packaging-Information/cdhvd_topic_8.html

pom.xml配置文件如下:

<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>org.conan.myhadoop.mr</groupId>  <artifactId>recommend</artifactId>  <version>1.0-SNAPSHOT</version>  <packaging>jar</packaging>  <name>recommend</name>  <url>http://maven.apache.org</url>  <properties>    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>  </properties>  <repositories>    <repository>      <id>cloudera</id>      <url>https://repository.cloudera.com/artifactory/cloudera-repos/</url>    </repository>  </repositories>  <dependencies>      <dependency>          <groupId>org.apache.hadoop</groupId>          <artifactId>hadoop-core</artifactId>          <version>2.0.0-mr1-cdh4.1.1</version>      </dependency>      <dependency>          <groupId>org.apache.hadoop</groupId>          <artifactId>hadoop-hdfs</artifactId>          <version>2.0.0-cdh4.1.1</version>      </dependency>      <dependency>          <groupId>org.apache.hadoop</groupId>          <artifactId>hadoop-common</artifactId>          <version>2.0.0-cdh4.1.1</version>      </dependency>           <dependency>          <groupId>org.apache.hadoop</groupId>          <artifactId>hadoop-mapreduce-client-core</artifactId>          <version>2.0.0-cdh4.1.1</version>      </dependency>         <dependency>      <groupId>junit</groupId>      <artifactId>junit</artifactId>      <version>3.8.1</version>      <scope>test</scope>    </dependency>  </dependencies></project>

问题2:

运行时出现,Exception in thread “main” Java.io.IOException: Cannot run program “cygpath”: CreateProcess error=2, ϵͳÕҲ»μ½ָ¶
原因是尽管连接的hadoop平台是在Linux上面,但是我们的eclipse调试环境是在windows,我们需要安装一个linux模拟器“cygwin”来支持程序的运行

问题3:

在windows上的eclipse跑hadoop时,显示hdfs.DFSClient: Failed to connect to /127.0.0.1:50010,
google了好久,最后在stackoverflow上找到类似问题,提示时hosts配置问题
原因是用的是CDH的Quick Start VM,/etc/hosts 下面把localhost与127.0.0.1地址绑定,需要把/etc/hosts改为

192.168.56.101 localhost.localdomain localhost
::1 localhost6.localdomain6 localhost6

重启后即可在eclipse中调试

0 0
原创粉丝点击