maven无法解析hadoop项目的依赖项

nwsw7zdq  于 2021-06-02  发布在  Hadoop
关注(0)|答案(2)|浏览(754)

我想从hadoop的书中构建示例项目,但是我得到了“无法解析依赖项错误”。以下是生成过程中的错误:

  1. [INFO] Building Chapter 2: MapReduce 3.0
  2. [INFO] ------------------------------------------------------------------------
  3. [WARNING] The POM for org.apache.hadoop:hadoop-core:jar:0.23.10 is missing, no dependency information available
  4. [WARNING] The POM for org.apache.hadoop:hadoop-test:jar:0.23.10 is missing, no dependency information available
  5. [INFO] ------------------------------------------------------------------------
  6. [INFO] Reactor Summary:
  7. [INFO]
  8. [INFO] Chapter 2: MapReduce .............................. FAILURE [1.409s]
  9. [INFO] Hadoop: The Definitive Guide, Example Code ........ SKIPPED
  10. [INFO] ------------------------------------------------------------------------
  11. [INFO] BUILD FAILURE
  12. [INFO] ------------------------------------------------------------------------
  13. [INFO] Total time: 1.819s
  14. [INFO] Finished at: Wed May 14 12:19:14 EEST 2014
  15. [INFO] Final Memory: 6M/67M
  16. [INFO] ------------------------------------------------------------------------
  17. [ERROR] Failed to execute goal on project ch02: Could not resolve dependencies for project com.hadoopbook:ch02:jar:3.0: The following artifacts could not be resolved: org.apache.hadoop:hadoop-core:jar:0.23.10, org.apache.hadoop:hadoop-test:jar:0.23.10: Failure to find org.apache.hadoop:hadoop-core:jar:0.23.10 in https://repository.apache.org/content/repositories/releases/ was cached in the local repository, resolution will not be reattempted until the update interval of apache.releases has elapsed or updates are forced -> [Help 1]

这是我的pom.xml for ch02项目

  1. <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  2. xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
  3. <modelVersion>4.0.0</modelVersion>
  4. <parent>
  5. <groupId>com.hadoopbook</groupId>
  6. <artifactId>hadoop-meta</artifactId>
  7. <version>3.0</version>
  8. <relativePath>../hadoop-meta/pom.xml</relativePath>
  9. </parent>
  10. <groupId>com.hadoopbook</groupId>
  11. <artifactId>ch02</artifactId>
  12. <packaging>jar</packaging>
  13. <version>3.0</version>
  14. <name>Chapter 2: MapReduce</name>
  15. <dependencies>
  16. <dependency>
  17. <groupId>junit</groupId>
  18. <artifactId>junit</artifactId>
  19. </dependency>
  20. <dependency>
  21. <groupId>org.hamcrest</groupId>
  22. <artifactId>hamcrest-all</artifactId>
  23. </dependency>
  24. </dependencies>
  25. </project>

你知道我如何用maven构建这个代码吗?问题是什么?谢谢

8zzbczxx

8zzbczxx1#

现在的情况是,maven在远程存储库中找不到它要找的东西。因此,当它接触到apache的maven存储库时,它只是没有找到版本0.23.10 hadoop测试的资源。
尤其是问题中pom文件的第8行 <relativePath>../hadoop-meta/pom.xml</relativePath> 是指导maven看 hadoop-meta/pom.xml . 在第48行到第50行,您将看到hadoop测试库的规范:

  1. <groupId>org.apache.hadoop</groupId>
  2. <artifactId>hadoop-test</artifactId>
  3. <version>${hadoop.version}</version>

那个 ${hadoop.version} 是在maven命令中指定的值,即 0.23.10 . 于是maven去了ApacheRepo,寻找hadoop测试v0.23.10,它并不存在。于是Maven摔倒了。
现在,如果您使用了hadoop测试中存在的版本,或者更改了pom文件,使hadoop测试不再是依赖项。

uqdfh47h

uqdfh47h2#

我也遇到了这个问题,原来是因为netbeans在pom.xml文件中添加了一些东西。再次检查自上次成功部署以来未添加任何内容。

相关问题