我正在做一个依赖于mahout和hadoop核心jar的某些类的项目。我之前使用带有classpath选项的javac来包含它们,但有人建议我应该使用maven来构建我的项目。但是,我不确定如何将依赖项添加到位于我的/ usr / local目录中的这些jar文件。
答案 0 :(得分:5)
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-core</artifactId>
<version>0.20.205.0</version> <!-- or whatever version -->
</dependency>
<dependency>
<groupId>org.apache.mahout</groupId>
<artifactId>mahout-core</artifactId>
<version>0.5</version>
</dependency>
答案 1 :(得分:2)
将此添加到您的pom:
<dependencies>
<dependency>
<groupId>org.apache.mahout</groupId>
<artifactId>mahout-core</artifactId>
<version>0.5</version>
</dependency>
<dependency>
<groupId>some.group</groupId>
<artifactId>hadoop</artifactId>
<version>some.version</version>
</dependency>
</dependencies>
如果您有一个jar的副本用于上述hadoop
示例,请执行以下命令:
mvn install:install-file -Dfile=/some/path/my-hadoop.jar -DgroupId=some.group -DartifactId=hadoop -Dversion=some.version -Dpackaging=jar
答案 2 :(得分:-1)
查看maven文档,尤其是依赖关系管理部分。如果你想使用Maven,你应该了解基础知识(其中之一是依赖关系管理)。
基本上,您可以在pom的<dependencies>
部分中定义项目的依赖项。查找所需依赖项的maven central(最常见的在线存储库),或搜索可能包含它们的其他在线存储库。
如果找不到它们,请添加您想要的依赖项(考虑合理的组ID,工件ID和版本)并尝试编译。 Maven会抱怨缺少依赖项,并提供一个基本命令将这些依赖项放入本地存储库。复制这些命令并填写jar文件的相应路径,maven会将该依赖项部署到本地存储库中。
请注意,您应首先在联机存储库中查找依赖项,否则您必须在本地存储库中手动部署每个新版本。