1

我想运行ycsb来测试hbase,参考了这篇博客: http ://cloudfront.blogspot.in/2013/02/how-to-benchmark-hbase-using-ycsb.html#.Uy-J2XiLe1F

但是当我更改 /ycsb/hbase 中的 pox.xml 时,我尝试使用 maven 构建 ycsb,然后出现此错误:

[错误] 未能在项目 hbase-binding 上执行目标:无法解析项目 com.yahoo.ycsb:hbase-binding:jar:0.1.4 的依赖项:未能找到 org.apache.hadoop:hadoop-core:jar: http://repo.maven.apache.org/maven2中的2.3.0被缓存在本地仓库中,直到 central 的更新间隔已经过去或强制更新后才会重新尝试解析 -> [帮助 1]

我已经成功安装了 hadoop-2.3.0 和 hbase-0.94.17。这是我使用的 pom.xml:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <parent>
    <groupId>com.yahoo.ycsb</groupId>
    <artifactId>root</artifactId>
    <version>0.1.4</version>
  </parent>

  <artifactId>hbase-binding</artifactId>
  <name>HBase DB Binding</name>

  <dependencies>
    <dependency>
      <groupId>org.apache.hbase</groupId>
      <artifactId>hbase</artifactId>
      <version>0.94.17</version>
    </dependency>
    <dependency>
      <groupId>org.apache.hadoop</groupId>
      <artifactId>hadoop-core</artifactId>
      <version>2.3.0</version>
    </dependency>
  </dependencies>

  <build>
    <plugins>
     <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-assembly-plugin</artifactId>
        <version>${maven.assembly.version}</version>
        <configuration>
          <descriptorRefs>
            <descriptorRef>jar-with-dependencies</descriptorRef>
          </descriptorRefs>
          <appendAssemblyId>false</appendAssemblyId>
        </configuration>
        <executions>
          <execution>
            <phase>package</phase>
            <goals>
              <goal>single</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
    </plugins>
  </build>

</project>

任何帮助将不胜感激,谢谢!

4

1 回答 1

2

问题是有时 maven 无法获取 hbase 和 hadoop 的 jar。您必须手动下载它们并将其添加到类路径中。

资料来源:广泛尝试 YCSB :)

于 2015-03-24T11:24:10.653 回答