红联Linux门户
Linux帮助

将win7下编译好的nutch移植到linux下运行出现ExcutionException

发布时间:2016-02-27 10:27:38来源:linux网站作者:WitsMakeMen

出现的错误如下:
java.util.concurrent.ExecutionException: java.lang.NoClassDefFoundError: org/cyberneko/html/parsers/DOMFragmentParser 
at java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java:232) 
at java.util.concurrent.FutureTask.get(FutureTask.java:91) 
at org.apache.nutch.parse.ParseUtil.runParser(ParseUtil.java:164) 
at org.apache.nutch.parse.ParseUtil.parse(ParseUtil.java:88) 
at org.apache.nutch.fetcher.Fetcher$FetcherThread.output(Fetcher.java:900) 
at org.apache.nutch.fetcher.Fetcher$FetcherThread.run(Fetcher.java:662) 


原因:
(1)在win7下编译的项目移植到linux下不兼容导致的。
(2)而且我的win7默认是GDK编码格式,linux下不支持这种格式。
(3)项目在eclipse中编辑的时候,我将nutch配置文件nutch-default.xml中的plugin.folders配置属性改动为./src/plugin,所以需要重新修改为plugins。


解决方案:首先在eclipse中将项目修改为UTF-8编码格式,然后将win7下编译的.class文件删除掉,我的是在conf配置文件夹下(有org和conf两个编译文件夹),修改nutch-default.xml配置文件的plugin.folders属性,值改为plugins,最后将项目移植到linux下,使用ant对项目重新进行编译,程序不再出现异常。


本文永久更新地址:http://www.linuxdiyf.com/linux/18444.html