2017-12-19 15 views
0

私はNutchのとHBaseのは、このドッキングウィンドウの画像に基づいて作業を取得しようとしています:https://hub.docker.com/r/cogfor/nutch/のNutchとHBaseの設定エラー

私はURLのファイルを注入しようとする例外取得しています:私は

InjectorJob: starting at 2017-12-19 20:49:45 
InjectorJob: Injecting urlDir: urls 
Exception in thread "main" java.lang.NoClassDefFoundError: 
org/apache/hadoop/hbase/HBaseConfiguration 
org.apache.gora.hbase.store.HBaseStore.initialize(HBaseStore.java:114) 
at g.apache.gora.store.DataStoreFactory.initializeDataStore(DataStoreFactory.java:102) 
at org.apache.gora.store.DataStoreFactory.createDataStore(DataStoreFactory.java:161) 
at org.apache.gora.store.DataStoreFactory.createDataStore(DataStoreFactory.java:135) 
at org.apache.nutch.storage.StorageUtils.createWebStore(StorageUtils.java:78) 
at org.apache.nutch.crawl.InjectorJob.run(InjectorJob.java:218) 
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) 
Caused by: java.lang.ClassNotFoundException: org.apache.hadoop.hbase.HBaseConfiguration 
at java.net.URLClassLoader.findClass(URLClassLoader.java:381) 
at java.lang.ClassLoader.loadClass(ClassLoader.java:424) 
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331) 
at java.lang.ClassLoader.loadClass(ClassLoader.java:357) 

をNutch/HBase/Hadoopの間にいくつかの誤った設定があることを知ってください。

私gora.propertiesがあります

<configuration>                                                                
<property> 
    <name>hbase.rootdir</name> 
    <value>file:///data</value> 
</property> 
<property> 
    <name>hbase.cluster.distributed</name> 
    <value>false</value> 
</property> 
</configuration> 

そして、私のNutchの-site.xmlのがあります:

gora.datastore.default=org.apache.gora.hbase.store.HBaseStore 

私のHBase-site.xmlのはあり

<?xml version="1.0"?> 
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?> 
<!-- Put site-specific property overrides in this file. --> 
<configuration> 
<property> 
    <name>http.agent.name</name> 
    <value>My Spider</value> 
    </property> 
    <property> 
    <name>storage.data.store.class</name> 
    <value>org.apache.gora.hbase.store.HBaseStore</value> 
    <description>Default class for storing data</description> 
    </property> 
    <property> 
    <name>plugin.includes</name> 
    <value>protocol-httpclient|urlfilter-regex|parse-(text|tika|js)|index-(basic|anchor)|query-(basic|site|url)|response-(json|xml)|summary-basic|scoring-opic|urlnormalizer-(pass|regex|basic)</value> 
    </property> 
    <property> 
    <name>db.ignore.external.links</name> 
    <value>true</value> 
    </property> 
    <property> 
    <name>parser.character.encoding.default</name> 
    <value>utf-8</value> 
    </property> 
    <property> 
    <name>http.content.limit</name>                                                           
    <value>6553600</value> 
</property> 

これはエラーがマルチS.O.いずれのソリューションも私のために働いていませんでした。私はすべてのこれらのファイルが存在して検証

[email protected]:/nutch_source/runtime/local/bin# echo $HADOOP_CLASSPATH 
/opt/hbase-0.98.21-hadoop2/lib/hbase-client-0.98.21-hadoop2.jar: 
/opt/hbase-0.98.21-hadoop2/lib/hbase-common-0.98.12-hadoop2.jar: 
/opt/hbase-0.98.21-hadoop2/lib/protobuf-java-2.5.0.jar: /opt/hbase- 
0.98.21-hadoop2/lib/guava-12.0.1.jar: /opt/hbase-0.98.21- 
hadoop2/lib/zookeeper-3.4.6.jar: /opt/hbase-0.98.21-hadoop2/lib/hbase- 
protocol-0.98.12-hadoop2.jar 

[email protected]:/nutch_source/runtime/local/bin# echo $HBASE_HOME  

/opt/hbase-0.98.21-hadoop2 

:$ HBASE_HOMEと$ HADOOP_CLASSPATHのENV変数は次のように設定されています。 誰かが私が逃しているものを助けてくれますか?

答えて

0

問題がドキュメンテーションに記載されている(https://wiki.apache.org/nutch/Nutch2Tutorial

「NBはそれは次の例外に遭遇することが可能です:java.lang.NoClassDefFoundErrorが:ORG/apacheの/ Hadoopの/ HBaseの/ HBaseConfiguration;これは事実によって引き起こされますhbase TEST jarがlibディレクトリに展開されることがあります。これを解決するには、インストールしたHBaseディレクトリからlibディレクトリにlibをコピーしてください(この問題は現在進行中です)。

行われる必要があるすべてはこれです:

cp -R /root/hbase/lib/* /root/nutch/lib/ 

とNutchの細かい作業を開始します。

関連する問題