美文网首页
关于是否在intellij idea 的工程下的resource

关于是否在intellij idea 的工程下的resource

作者: alexlee666 | 来源:发表于2020-03-23 20:58 被阅读0次

    hadoop core-site.xml 中通常有核心的配置项,比如:

    <configuration>
        <property>
            <name>fs.defaultFS</name>
            <value>hdfs://localhost:9000</value>   
        </property>
        <property>
                <name>hadoop.tmp.dir</name>
                <value>/Users/user1/software_install/hadoop_install/hadoop_tmp_dir</value>
        </property>
        <property>
            <name>ha.zookeeper.quorum</name>
            <value>localhost:2181</value>
        </property>
        <property>
            <name>hive.zookeeper.quorum</name>
            <value>localhost:2181</value>
        </property>
    
    </configuration>
    
    

    如图,当resources目录下添加了Hadoop core-site.xml 且包含配置项“fs.defaultFS”时,应用代码中不需要显式指定 Hadoop 配置项 “fs.defaultFS”;

    resources目录下添加hadoop core-site.xml
    但是如果resources目录未添加该配置文件或者不包含该配置项,则必须要在应用代码中显式指定该配置项,否则当使用相对路径访问HDFS文件时:
    Configuration conf = new Configuration();
    FileSystem fs = FileSystem.get(conf);
    FSDataInputStream in = fs.open(new Path("/user/hive/warehouse/test.db/tbl1/000000_0")
    // 完整路径应该为:hdfs://localhost:9000/user/hive/warehouse/test.db/tbl1,其中hdfs://localhost:9000为配置项“fs.defaultFS”的值。
    
    

    会提示找不到该文件:

    java.io.FileNotFoundException: File /user/hive/warehouse/test.db/tbl1 does not exist
    
    

    相关文章

      网友评论

          本文标题:关于是否在intellij idea 的工程下的resource

          本文链接:https://www.haomeiwen.com/subject/ohsgyhtx.html