0

Debian Squeeze で HBase 0.94.14 を使用して Nutch 2.2.1 をセットアップしようとしています。Nutch 1 と 2 のチュートリアルとさまざまなドキュメントに注意深く従いました。HBase 0.94.14 をビルドでき、最終的に動作するようになりました (テーブルなどを作成できます)。Nutch を問題なくビルドできました (Gora 0.3 に設定されています)。

現在の問題は次のとおりです。1- Nutch を起動しようとすると、次のトレースが表示されます。

./nutch inject /root/nutch/apache-nutch-2.2.1/urls/
InjectorJob: starting at 2014-11-27 09:43:53
InjectorJob: Injecting urlDir: /root/nutch/apache-nutch-2.2.1/urls
InjectorJob: java.lang.ClassNotFoundException: org.apache.gora.memory.store.HBaseStore
    at java.net.URLClassLoader$1.run(URLClassLoader.java:372)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:361)

strace -f を使用すると、「HBaseStore.class」が見つからないことがわかりました。

stat("/root/nutch/apache-nutch-2.2.1/runtime/local/org/apache/gora/memory/store/HBaseStore.class",\
  <unfinished ...>
[pid  1827] <... futex resumed> )       = -1 EAGAIN (Resource temporarily unavailable)

クラスパスに問題があるかどうかを調べようとしましたが、最終的に次のことがわかりました: : hbase-0.90.4.jar

私が見つけたいくつかのオンライン ディスカッションによると、nutch ツリーの hbase-0.90.4.jar を hbase ツリーの hbase-0.94.4 に置き換えます...

しかし: - Java の問題は修正されません - Nutch を再構築するたびに、hbase-0.90.4.jar が戻ってきて、nutch ツリーでそのソースを見つけることができません :-/

/root/nutch/apache-nutch-2.2.1/conf/hbase-site.xml には以下があることに注意してください。

<property>
<name>hbase.rootdir</name>
<value>/root/nutch/hbase-master/conf/</value>
</property>

これは Nutch 0.94.4 に対応します ...

また、Gora 0.5 を再ビルドして使用しようとしましたが、Nutch のビルドが失敗します。

私は Java の専門家ではありません。Nutch が正しいバージョンの HBase を使用していない理由、ソースと Java クラスが欠落しているように見える理由がわかりません。この時点で完全に立ち往生しています。なんて混乱。

この状況を救うのに役立つヒントをありがとう。

4

3 に答える 3

0

アルフォンソ

gora.properties を確認したところ、問題ありませんでした。

また、最新の 2.3 スナップショットを試しましたが、残念ながらビルド時に依存関係の問題が発生しました。

[ivy:resolve]       ::::::::::::::::::::::::::::::::::::::::::::::
[ivy:resolve]       ::          UNRESOLVED DEPENDENCIES         ::
[ivy:resolve]       ::::::::::::::::::::::::::::::::::::::::::::::
[ivy:resolve]       ::   org.restlet.jse#org.restlet.lib.org.restlet.lib.org.json;2.0:     java.text.ParseException: inconsistent module descriptor file found in 'http://maven.restlet.org/org/restlet/jse/org.restlet.lib.org.restlet.lib.org.json/2.0/org.restlet.lib.org.restlet.lib.org.json-2.0.pom': bad module name: expected='org.restlet.lib.org.restlet.lib.org.json' found='org.restlet.lib.org.json'; 
[ivy:resolve]       ::::::::::::::::::::::::::::::::::::::::::::::
[ivy:resolve] :::: ERRORS
[ivy:resolve]       restlet: bad module name found in http://maven.restlet.org/org/restlet/jse/  org.restlet.lib.org.restlet.lib.org.json/2.0/org.restlet.lib.org.restlet.lib.org.json-2.0.pom: expected='org.restlet.lib.org.restlet.lib.org.json found='org.restlet.lib.org.json'
[ivy:resolve] 
[ivy:resolve] :: USE VERBOSE OR DEBUG MESSAGE LEVEL FOR MORE DETAILS

BUILD FAILED
/root/nutch/2.3/build.xml:467: impossible to resolve dependencies:
        resolve failed - see output for details
于 2014-11-28T15:39:24.787 に答える