zoukankan      html  css  js  c++  java
  • 使用IDEA2017在Windows下编程并测试Hadoop2.7+Spark2.2+Azkaban

    1. 下载好IDEA HADOOP SPARK

    首先,配置IDEA, 在插件管理中使用IDEA在线库安装scala插件, 在在线库直接搜索即可;

    其次,配置Maven选项, 将Maven添加到IDEA;

     <mirrors>
        <mirror>
            <id>nexus-aliyun</id>
          <mirrorOf>*</mirrorOf>
          <name>Nexus aliyun</name>
          <url>http://maven.aliyun.com/nexus/content/groups/public</url>
        </mirror>
        
      </mirrors>
    

      

    最后,将windows依赖覆盖原先的linux依赖, 如下图;

    将其中的hadoop.dll 拷贝至 C:WindowsSystem32目录下 

    2. 向IDEA导入HADOOP jar包, 将本地hadoop下的, share目录中的五个文件夹导入, 如下图:

     

     将配置文件放入resources后,运行一些测试程序后发现:

    报错:  

    org.apache.hadoop.security.AccessControlException: Permission denied

    解决:  hadoop fs -chmod -R 755 /

    另外:  在pom中需加入:
    
    <dependency>
                <groupId>org.apache.hadoop</groupId>
                <artifactId>hadoop-client</artifactId>
                <version>${hadoop.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.hadoop</groupId>
                <artifactId>hadoop-common</artifactId>
                <version>${hadoop.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.hadoop</groupId>
                <artifactId>hadoop-hdfs</artifactId>
                <version>${hadoop.version}</version>
            </dependency>
    

      

    最严重的如下, 因为我使用的mapred默认是yarn模式, 因此需要设置跨平台发送jar包:

    Exception message: /bin/bash: line 0: fg: no job control

    解决:

    Configuration conf = new Configuration();
    conf.set("mapred.remote.os","Linux");
    conf.set("mapreduce.app-submission.cross-platform","true");
    conf.set("mapred.jar","D:\WorkSpace\Web-DataAnalyze\pc\out\artifacts\pc\pc.jar");

     终于能run了!!!

     

    2. 测试SPARK, 在IDEA中建立SCALA工程, 并新建一个pom.xml转为Maven工程;

     最后, 将 Spark项目下的jars导入IDEA即可, 完成测试;

    3.  Cannot run program "git"

    yum install git

    git --version

  • 相关阅读:
    开博的第一天!
    使用EditText的addTextChangedListener(new TextWatcher())方法
    Activity的四种launchMode
    MySQL数据库
    BaseAdapter中重写getview的心得以及发现convertView回收的机制
    与数据库打交道的Adapter----SimpleCursorAdapter
    [原创] Fragment的添加、移除问题
    Datum Form Goole Android
    app包中的fragment和v4包中的fragment的使用的区别
    LayoutInflater类详解
  • 原文地址:https://www.cnblogs.com/ruili07/p/10046076.html
Copyright © 2011-2022 走看看