hadoop版本:1.0.4

今天在跑TestForest的时候,居然出现了这个问题:

  1. Exception in thread "main" java.lang.IllegalArgumentException: Expected authority at index 7: hdfs://
  2. at java.net.URI.create(URI.java:859)
  3. at org.apache.hadoop.fs.FileSystem.getDefaultUri(FileSystem.java:131)
  4. at org.apache.hadoop.fs.FileSystem.get(FileSystem.java:123)
  5. at org.apache.mahout.classifier.df.mapreduce.Classifier.run(Classifier.java:107)
  6. at org.apache.mahout.classifier.df.mapreduce.TestForest.mapreduce(TestForest.java:187)
  7. at org.apache.mahout.classifier.df.mapreduce.TestForest.testForest(TestForest.java:173)
  8. at org.apache.mahout.classifier.df.mapreduce.TestForest.run(TestForest.java:145)
  9. at mahout.fansy.partial.test.TestTestForest.main(TestTestForest.java:26)
  10. Caused by: java.net.URISyntaxException: Expected authority at index 7: hdfs://
  11. at java.net.URI$Parser.fail(URI.java:2829)
  12. at java.net.URI$Parser.failExpecting(URI.java:2835)
  13. at java.net.URI$Parser.parseHierarchical(URI.java:3083)
  14. at java.net.URI$Parser.parse(URI.java:3034)
  15. at java.net.URI.<init>(URI.java:595)
  16. at java.net.URI.create(URI.java:857)
  17. ... 7 more

我调用TestForest的代码如下:

  1. package mahout.fansy.partial.test;
  2.  
  3. import org.apache.hadoop.conf.Configuration;
  4. import org.apache.mahout.classifier.df.mapreduce.TestForest;
  5.  
  6. public class TestTestForest {
  7.  
  8. /**
  9. * 测试TestForest
  10. * @param args
  11. * @throws Exception
  12. */
  13. public static void main(String[] args) throws Exception {
  14. String[] arg=new String[]{"-i","hdfs://ubuntu:9000/user/breiman/input/glass.data",
  15. "-ds","hdfs://ubuntu:9000/user/breiman/glass.info",
  16. "-m","hdfs://ubuntu:9000/user/breiman/glass.tree/forest.seq",
  17. "-a","-mr",
  18. "-o","hdfs://ubuntu:9000/user/breiman/out-testforest0"};
  19. Configuration conf=new Configuration();
  20. conf.set("mapred.job.tracker", "ubuntu:9001");
  21. conf.set("fs.default.name", "hdfs://");
  22. TestForest tf=new TestForest();
  23. tf.setConf(conf);
  24. Configuration confq=tf.getConf();
  25. System.out.println(confq);
  26. tf.run(arg);
  27. }
  28.  
  29. }

刚开始的时候是直接使用TestForest.main(arg)来调用的,但是发现conf的值设置不了(即全部都是按照默认,这个肯定不行,在win7 的myeclipse上面调用hadoop肯定要设置conf的)但是哪里可以设置,所以就想到了TestForest是继承Configuration的,然后Configuration有一个setConf的方法,所以就实例化了一个TestForest对象,然后调用setConf方法设置conf,但是conf设置的不对,所以出现了上面的错误。要如何设置呢?其实把conf.set("fs.default.name", "hdfs://");改为conf.set("fs.default.name", "ubuntu:9000");就可以了,其中ubuntu是主节点机器名。然后就可以跑了。

分享,成长,快乐

转载请注明blog地址:http://blog.csdn.net/fansy1990

Expected authority at index 7: hdfs://的更多相关文章

  1. java.lang.IllegalArgumentException: Expected authority at index 7: http:// 异常的原因

    今天遇到个错误,异常信息  java.lang.IllegalArgumentException: Expected authority at index 7: http://  ,中文意思就是说参数 ...

  2. 几个因为hadoop配置文件不当造成的错误

    192.168.1.20: Exception in thread "main" java.lang.IllegalArgumentException 192.168.1.20: ...

  3. HDFS --访问

    Hdfs的访问方式有两种,第一:类似linux命令,hadoop shell.第二:java API方式. 先看第一种. FS Shell cat chgrp chmod chown copyFrom ...

  4. HDFS的基本shell操作,hadoop fs操作命令

    (1)分布式文件系统 随着数据量越来越多,在一个操作系统管辖的范围存不下了,那么就分配到更多的操作系统管理的磁盘中,但是不方便管理和维护,因此迫切需要一种系统来管理多台机器上的文件,这就是分布式文件管 ...

  5. HDFS的Shell

    调用文件系统(FS)Shell命令应使用 $HADOOP_HOME/bin/hadoop fs 的形式. 所有的FS Shell命令使用URI路径作为参数. URI格式是scheme://author ...

  6. HDFS原理讲解

    简介 本文是笔者在学习HDFS的时候的学习笔记整理, 将HDFS的核心功能的原理都整理在这里了. [广告] 如果你喜欢本博客,请点此查看本博客所有文章:http://www.cnblogs.com/x ...

  7. hadoop系列二:HDFS文件系统的命令及JAVA客户端API

    转载请在页首明显处注明作者与出处 一:说明 此为大数据系列的一些博文,有空的话会陆续更新,包含大数据的一些内容,如hadoop,spark,storm,机器学习等. 当前使用的hadoop版本为2.6 ...

  8. Hadoop Shell命令(基于linux操作系统上传下载文件到hdfs文件系统基本命令学习)

    Apache-->hadoop的官网文档命令学习:http://hadoop.apache.org/docs/r1.0.4/cn/hdfs_shell.html FS Shell 调用文件系统( ...

  9. Hadoop之HDFS(一)HDFS入门及基本Shell命令操作

    1 . HDFS 基本概念 1.1  HDFS 介绍 HDFS 是 Hadoop Distribute File System 的简称,意为:Hadoop 分布式文件系统.是 Hadoop 核心组件之 ...

随机推荐

  1. [Protractor] Running tests on multiple browsers

    Testing your AngularJS application on multiple browsers is important, and Protractor offers this abi ...

  2. Android应用程序资源的编译和打包过程分析

    文章转载至CSDN社区罗升阳的安卓之旅,原文地址:http://blog.csdn.net/luoshengyang/article/details/8744683 我们知道,在一个APK文件中,除了 ...

  3. Oracle监听静态注册和动态注册

    静态注册和动态注册总结 一.什么是注册? 注册就是将数据库作为一个服务注册到监听程序.客户端不需要知道数据库名和实例名,只需要知道该数据库对外提供的服务名就可以申请连接到数据库.这个服务名可能与实例名 ...

  4. PHP学习笔记二十五【类的继承】

    <?php //定义父类 class Stu{ public $name; protected $age; protected $grade; private $address;//私有变量不会 ...

  5. Code Review中应该关注的点

    Magic number/string If statement, you should always use single line or brackets Provide default valu ...

  6. atom写文档技巧

    1. 段落和标题大纲 标题大纲(类似于HTML的H1, H2, …) 简单得很,一级标题用# 标题, 二级标题用## 标题,三级标题用### 标题,以此类推. 段落(类似HTML的<p>) ...

  7. php ajax 同时验证 用户名 密码

    今天写了一个程序分享给大家,该程序是ajax密码和用户名验证问题 第一步 先在数据库里建立一张表 有3个字段 为 id name pass 第二步 写html页面,需要引入jq库 请到官网自行下载 & ...

  8. WordPress插件制作教程(一): 如何创建一个插件

    上一篇还是按照之前的教程流程,写了一篇WordPress插件制作教程概述,从这一篇开始就为大家具体讲解WordPress插件制作的内容.这一篇主要说一下插件的创建方法. 相信大家都知道插件的安装文件在 ...

  9. Django学习(七) 创建第一个Django项目

    如果这是你第一次使用Django,你必须进行一些初始设置.即,您将需要自动生成一些代码,建立了Django项目. 从命令行.cd进入一个目录,你想要存储您的代码,然后运行以下命令: django-ad ...

  10. centos6.4x64安装vncserver

    参考文章:http://blog.csdn.net/mchdba/article/details/43058849 主要是远程安装oracle11g需要用到这个东西: 进入系统依次执行下列命令: #查 ...