简体   繁体   English

错误:使用mongodb启动Apache坚果时

[英]Error : while start Apache nutch with mongodb

when i try to run, following error comes, In mongodb logs one connection accepted and end immediately.how solve it? 当我尝试运行时,出现以下错误,在mongodb中记录了一个已接受的连接并立即结束。如何解决?

$ bin/crawl conf/urls/seeds.txt tuto 1 No SOLRURL specified. $ bin / crawl conf / urls / seeds.txt tuto 1未指定SOLRURL。 Skipping indexing. 跳过索引。 Injecting seed URLs /e/apache-nutch/apache-nutch-2.3.1/runtime/local/bin/nutch inject conf/urls/seeds.txt -crawlId tuto InjectorJob: starting at 2016-10-01 18:15:14 InjectorJob: Injecting urlDir: conf/urls/seeds.txt InjectorJob: Using class org.apache.gora.mongodb.store.MongoStore as the Gora storage class. 注入种子URL /e/apache-nutch/apache-nutch-2.3.1/runtime/local/bin/nutch注入conf / urls / seeds.txt -crawlId tuto InjectorJob:从2016-10-01 18:15:14开始InjectorJob:注入urlDir:conf / urls / seeds.txt InjectorJob:使用类org.apache.gora.mongodb.store.MongoStore作为Gora存储类。 InjectorJob: java.lang.NullPointerException at java.lang.ProcessBuilder.start(ProcessBuilder.java:1010) at org.apache.hadoop.util.Shell.runCommand(Shell.java:482) at org.apache.hadoop.util.Shell.run(Shell.java:455) at org.apache.hadoop.util.Shell$ShellCommandExecutor.execute(Shell.java:702) at org.apache.hadoop.util.Shell.execCommand(Shell.java:791) at org.apache.hadoop.util.Shell.execCommand(Shell.java:774) at org.apache.hadoop.fs.RawLocalFileSystem.setPermission(RawLocalFileSystem.java:646) at org.apache.hadoop.fs.RawLocalFileSystem.mkdirs(RawLocalFileSystem.java:434) at org.apache.hadoop.fs.FilterFileSystem.mkdirs(FilterFileSystem.java:281) at org.apache.hadoop.mapreduce.JobSubmissionFiles.getStagingDir(JobSubmissionFiles.java:125) at org.apache.hadoop.mapreduce.JobSubmitter.submitJobInternal(JobSubmitter.java:348) at org.apache.hadoop.mapreduce.Job$10.run(Job.java:1285) at org.apache.hadoop.mapreduce.Job$10.run(Job.java:1282) at java.security.AccessController.doPrivileged(Native Me InjectorJob:位于org.apache.hadoop.util.Shell.runCommand(Shell.java:482)处的org.apache.hadoop.util.Shell.runCommand(Shell.java:482)处的java.lang.ProcessBuilder.start(ProcessBuilder.java:1010)处的java.lang.NullPointerException。 Shell.run(Shell.java:455)位于org.apache.hadoop.util.Shell $ ShellCommandExecutor.execute(Shell.java:702)位于org.apache.hadoop.util.Shell.execCommand(Shell.java:791)在org.apache.hadoop.fs.RawLocalFileSystem.mkdirs上的org.apache.hadoop.fs.RawLocalFileSystem.setPermission(RawLocalFileSystem.java:646)上的org.apache.hadoop.util.Shell.execCommand(Shell.java:774) (RawLocalFileSystem.java:java:434)位于org.apache.hadoop.fs.FilterFileSystem.mkdirs(FilterFileSystem.java:281)位于org.apache.hadoop.mapreduce.JobSubmissionFiles.getStagingDir(JobSubmissionFiles.java:125)位于org.apache。在org.apache.hadoop.mapreduce.Job $ 10.run(Job.java:1285)上的hadoop.mapreduce.JobSubmitter.submitJobInternal(JobSubmitter.java:348)在org.apache.hadoop.mapreduce.Job $ 10.run(Job。 java:1282)at java.security.AccessController.doPrivileged(本机我 thod) at javax.security.auth.Subject.doAs(Subject.java:415) at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1614) at org.apache.hadoop.mapreduce.Job.submit(Job.java:1282) at org.apache.hadoop.mapreduce.Job.waitForCompletion(Job.java:1303) at org.apache.nutch.util.NutchJob.waitForCompletion(NutchJob.java:115) at org.apache.nutch.crawl.InjectorJob.run(InjectorJob.java:231) at org.apache.nutch.crawl.InjectorJob.inject(InjectorJob.java:252) at org.apache.nutch.crawl.InjectorJob.run(InjectorJob.java:275) at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70) at org.apache.nutch.crawl.InjectorJob.main(InjectorJob.java:284) thod)在org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1614)在javax.security.auth.Subject.doAs(Subject.java:415)在org.apache.hadoop.mapreduce.Job.submit (Job.java:1282)在org.apache.hadoop.mapreduce.Job.waitForCompletion(Job.java:1303)在org.apache.nutch.util.NutchJob.waitForCompletion(NutchJob.java:115)在org.apache。 org.apache.nutch.crawl.InjectorJob.inject(InjectorJob.java:252)上的nutch.crawl.InjectorJob.run(InjectorJob.java:231)在org.apache.nutch.crawl.InjectorJob.run(InjectorJob.java: 275),位于org.apache.nutch.crawl.InjectorJob.main(InjectorJob.java:284),位于org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)

I believe the newest version of Nutch uses 我相信Nutch的最新版本

# bin/nutch inject seedDirectory/

This worked for me at least. 这至少对我有用。

I solved this issue by just removing two lines ie: 我只删除了两行即解决了这个问题:

[field name="sitemaps" docfield="sitemaps" type="document"] 

and

[field name="stmPriority" docfield="stmPriority" type="int32"] 

from gora-mongodb-mapping.xml file in conf folder of nutch. 从nutch的conf文件夹中的gora-mongodb-mapping.xml文件中获取。 Hope it will help you.. 希望对您有帮助。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM