1、问题 permission /tmp/hadoop....
解决方法:下载hadoop源码包,修改org.apache.hadoop.fs.FileUtil.java文件中方法checkReturnValue内容。将异常改为log。用意:不在检测文件系统路径问题
 private static void checkReturnValue(boolean
rv, File p, 
     
     
     
     
     
     
   FsPermission permission
     
     
     
     
     
     
   ) throws IOException {
    if (!rv) {
     
LOG.debug("Failed to set permissions of path: " + p
     
     
     
     
    " to "
     
     
     
     
    String.format("o",
permission.toShort()));
    }
  }
  
 
替换过程:(一个朋友也在eclipse下面搞的,然后就替换了,但是还抱了个错,原因是把jar包直接放到了项目的Liberty下,所以我在这儿添加了替换过程。)
 
在eclipse下面不是简单的添加到Liberaries下面就可以的。eclipse下项目使用的是ivy这个插件对jar包进行的管理,所以所有第三方jar的引入都是ivy的工作。
 
ivy有一个存放jar文件的默认路径,可修改,至于如何修改我就不在这儿阐述了,这个默认路径是C:\Documents and
Settings\Administrator\.ivy2\cache,
 
所以我们替换hadoop的jar包的时候也修改在这儿替换,这儿替换有两种方法:
 
一种是直接打开hadoop目录下的jar目录,然后替换掉项目使用的那个版本的jar(查看项目下的ivy.xml可知),
  并将替换后的jar文件的名称修改为之前的那个jar的名称。
 
另一种就是像其他jar文件一样,有哪些文件就复制哪些文件,然后把文件名都修改为我们重新编译后的jar的文件名,把我们重新编译后的jar放到jar文件夹下面。
 
注意重新编译hadoop后需要提取的jar的路径,别取错了。一定是build目录下的。
2、org.apache.gora.sql.store.SqlStore NotFound问题
此问题只在nutch2.2中存在,2.1中配置文件ivy.xml已经做了依赖配置,所以不会出现这个问题。
此类问题还有com.healthmarketscience.sqlbuilder.dbspec.Column找不到。
解决方法:配置ivy.xml,将下面一行的注释去掉。

4.问题;com.mysql.jdbc.Driver
NotFound 
原因:gora.properties文件中的属性值不能有任何空格,否则出现莫名其妙的问题。nutch的容错机制不太严谨。
解决方法:查看gora.properties文件属性值,是否配置有问题,尤其空格。严格排查。没行的前后空格都不行。我因为这个空格导致我搞了2天,真扯。。

5.问题:job failed: name=inject urls,
jobid=job_local_0001
刚开始搭建,类似问题出现的频率最多,出现类似这样的问题我们第一想到的应该是hadoop.log这文件,而不是只看控制台。通过hadoop.log日志记录文件具体问题具体对待。下面这个解决方法只是我遇到的一个问题的权宜之计,只供参考。不要误导大家。
总结:此类问题一般是因为程序捕获到了异常,然后异常中断job后出现的。只要从hadoop.log中找到具体的问题所在,一般不会有什么问题。
解决方法:两种。
1).nutch-site.xml中取消对plugin的配置。不要使用插件的时候不会报错,可能其中某些插件存在问题。这种情况在ant之后执行runtime/local/bin下的nutch时可排除。
2).nutch2.2要修改掉ivy.xml中的gora-core依赖包的版本,修改为0.2.1

3)“Build Path” -> “Configure Build Path”-->“Order and Export” tab, scroll down and select “2.x/conf” (or trunk/conf). Click on “Top” button. Sadly, Eclipse will again build the workspace but this time it won’t take take much.即将““2.x/conf‘移动到顶部就可解决,我的问题是这么解决的,再次补充mark一下!

6.java.lang.OutOfMemoryError: Java heap space
这个问题才是真正导致上面第5个问题的直接原因。问题描述是在hadoop.log中看到的。
解决方法:运行参数vm arguments 添加:-Xms800m -Xmx800m

7.查看问题方法:不要总看控制台,控制台的信息不能完全解决问题,也不能完全定位问题,只能通过根目录的hadoop.log文件查看日志信息。

8、x point org.apache.nutch.net.URLNormalizer not
found.
 
这个错是一个朋友测试nutch的时候遇到的。类似这样的问题,看看是不是插件中的类,如果是nutch插件中的类,可以肯定这些错是因为没有找到插件的原因。
解决方案:build项目之后,必须把项目的根目录下面的build文件夹复制到项目的根目录下面。然后刷新eclipse中的项目。然后还需要修改一个配置参数。
nutch-site.xml中修改plugin.folders这个属性的属性值。如下:
  plugin.folders
  ./plugins

自己亲自实验得到的结论是将value值改为”./src/plugin“,注意前面有一个点表示当前相对当前路径!也可以根据官方文档的做法写绝对路径,也可以加载插件!
9.java.lang.NoSuchMethodError: org.apache.gora.persistency.Persistent.getSchema()Lorg/apache/avro/Schema

Solved. You must add correct version of gora-hbase to you libraries. gora-hbase-0.3.jar
修改版本为0.2.1,然后用ant直接编译即可
10.ant编译期间出现“jdk1.6 source XXXX“警告
解决方案:在”default.properties“找到”java version = 1.6“将其改成与自己JDK版本一致即可!
总结;初次接触,控制台给的问题不全面,只能Debug,后来发现用观看”hadoop.log“文件可以清晰看到问题所在,这点非常重要,再次Mark一下!
12.etch of url failed with: org.apache.nutch.protocol.ProtocolNotFound: protocol not found for url=http
解决方案:
地址:https://stackoverflow.com/questions/45983592/nutch-1-13-fetch-of-url-failed-with-org-apache-nutch-protocol-protocolnotfound
somehow solved the issue. I think the space in nutch-site.xml was causing issue new plugin.includes section for others coming here.
在 nutch-site.xml中添加如下代码问题解决:
xml <property> <name>plugin.includes</name> <value>protocol-http|protocol-httpclient|urlfilter-regex|parse-(html)|index-(basic|anchor)|indexer-solr|query-(basic|site|url)|response-(json|xml)|summary-basic|scoring- opic|urlnormalizer-(pass|regex|basic) </value> </property>
参考地址:https://wiki.apache.org/nutch/RunNutchInEclipse

nutch2.x在eclipse+windows环境下运行遇到的一些问题的解决方案的更多相关文章

  1. 在windows环境下运行compass文件出现的错误提示解决方案

    在windows环境下运行compass文件出现的错误提示解决方案 例如:经常在项目中运行grunt命令编译scss文件的时候,会出现下面的错误提示 (Encoding::CompatibilityE ...

  2. 关于docker在windows环境下运行的第一次体验

    关于docker在windows环境下执行的原理 1.1.           首先是Docker Quickstart启动,如果在虚拟机Oracle VM VirtualBox不存在default虚 ...

  3. 编译实战 | 手摸手教你在Windows环境下运行Redis6.x

    原创:微信公众号 码农参上,欢迎分享,转载请保留出处. 哈喽大家好啊,我是没事就愿意瞎捣鼓的Hydra. 不知道有没有小伙伴像我一样,平常开发中用的是windows操作系统,有时候想装点什么软件,一看 ...

  4. windows环境下运行Elasticsearch

    1.Elasticsearch下载地址:https://github.com/medcl/elasticsearch-rtf 直接下载ZIP包: 2.配置JAVA环境 jdk64位地址:jdk-win ...

  5. windows环境下nutch2.x 在eclipse中实现抓取数据存进mysql详细步骤

    nutch2.x 在eclipse中实现抓取数据存进mysql步骤 最近在研究nutch,花了几天时间,也遇到很多问题,最终结果还是成功了,在此记录,并给其他有兴趣的人提供参考,共同进步. 对nutc ...

  6. windows环境下Eclipse开发MapReduce程序遇到的四个问题及解决办法

    按此文章<Hadoop集群(第7期)_Eclipse开发环境设置>进行MapReduce开发环境搭建的过程中遇到一些问题,饶了一些弯路,解决办法记录在此: 文档目的: 记录windows环 ...

  7. Android开发之 Windows环境下通过Eclipse创建的第一个安卓应用程序(图文详细步骤)

    第一篇  windows环境下搭建创建的第一个安卓应用程序 为了方便,我这里只采用了一体包进行演示. 一.下载安卓环境的一体包. 官网下载:安卓官网(一般被墙了) 网盘下载: http://yunpa ...

  8. MinGW在Windows环境下配合命令提示符运行C/C++

    http://jingyan.baidu.com/article/4853e1e5787d6b1909f726f8.html 在电脑中配置MinGW环境. 具体参见我的另一篇分享经验——MinGW在W ...

  9. windows 环境下通过运行快速启动程序

    在windows环境下,我们可以使用一些系统内置的快捷键来快速启动我们想要的应用程序,我这里举例几个我经常使用的,比如: 快捷键 功能说明 services.msc  查看系统服务 gpedit.ms ...

随机推荐

  1. common-fileupload组件实现java文件上传和下载

    简介:文件上传和下载是java web中常见的操作,文件上传主要是将文件通过IO流传放到服务器的某一个特定的文件夹下,而文件下载则是与文件上传相反,将文件从服务器的特定的文件夹下的文件通过IO流下载到 ...

  2. java内存模型原理阅读总结

    Java内存模型可以理解为在特定操作协议下,对特定的内存或高速缓存进行读写访问的过程抽象.不同架构的物理计算机可以有不一样的内存模型,java虚拟机也有自己的内存模型,java虚拟机规范中试图定义一种 ...

  3. React Native 初探

    推荐文章 React Native 简介:用 JavaScript 搭建 iOS 应用 (1) React Native 简介:用 JavaScript 搭建 iOS 应用 (2) React Nat ...

  4. package.json字段分析

    分析1.必须在包的顶层目录下2.二进制文件应该在bin目录下3.javascipt在lib目录下4.文档在doc目录下 package.json字段分析 name:包的名称,必须是唯一的,由小写英文字 ...

  5. Maven和Gradle对比(转载)

    转载出处:http://www.cnblogs.com/huang0925 Java世界中主要有三大构建工具:Ant.Maven和Gradle.经过几年的发展,Ant几乎销声匿迹.Maven也日薄西山 ...

  6. h5获取摄像头拍照功能

    完整代码展示 <!DOCTYPE html> <head> <title>HTML5 GetUserMedia Demo</title> <met ...

  7. 重写BaseAdapter实现ListView

    public class BaseAdapterActivity extends BaseActivity { private ListView base_adapter_listView; priv ...

  8. 读书笔记jvm探秘之一:内存概况

    jvm内存大致可以分为六大块: 堆,虚拟机主要内存,可以形象的说,堆是对象的存储库,几乎所有的对象实例和数组都在此分配内存,当然也死于此,jvm垃圾回收机制(简称GC)主要处理的就是这个地方.它被所有 ...

  9. Wireshark启动出现“无法启动此程序,因为计算机丢失api-ms-win-crt-runtime-l1-1-0.dll。”

    由于重装了win7系统,安装wireshark启动出现了“无法启动此程序,因为计算机丢api-ms-win-crt-runtime-l1-1-0.dll”的问题. 网上查了一圈的资料终解决问题,于是整 ...

  10. 4 Template层 -模板继承

    1.模板继承 模板继承可以减少页面内容的重复定义,实现页面内容的重用 典型应用:网站的头部.尾部是一样的,这些内容可以定义在父模板中,子模板不需要重复定义 block标签:在父模板中预留区域,在子模板 ...