使用m2eclipse添加POM类型依赖,无法解析

时间:2011-06-03 20:49:31

标签: maven dependencies m2eclipse pom.xml

我正在尝试将Hector依赖项添加到POM。我的IDE是Eclipse,我也使用m2eclipse。添加JAR类型的依赖项不是问题,但此依赖项是POM类型。我几乎尝试了一切,包括清洁,构建和使用导入范围,但似乎没有任何帮助。当我尝试添加import me.prettyprint.hector.api.Serializer;时 我收到错误“导入无法解决”。

我还需要做些什么来使用POM类型的依赖项,还是有更好的方法在项目中使用POM类型的依赖项?

2 个答案:

答案 0 :(得分:3)

我认为他的问题并不像简单地包含必要的依赖那样明显。我也遇到过这个问题,正在寻找解决方案。问题可以更明确地说明如下:

假设我有两个maven项目(项目A和项目B)。项目A是一个简单的Web应用程序,它希望包含项目B中所述的依赖项。但是,项目B的打包类型是“pom”。这应该允许项目B的所有依赖项都包含在项目A中。这是一个例子:

项目A(包装是“战争”):

<dependencies>
    <dependency>
        <groupId>com.foo</groupId>
        <artifactId>B</artifactId>
        <version>1.0</version>
        <type>pom</type>
    </dependency>
</dependencies>

项目B(包装是“pom”)

<dependencies>
    <dependency>
      <groupId>commons-lang</groupId>
      <artifactId>commons-lang</artifactId>
      <version>2.4</version>
    </dependency>
</dependencies>

我们希望在Eclipse中看到的是当您运行maven eclipse:项目A上的eclipse时,您可以将commons-lang-2.4.jar文件视为项目A下的依赖项,以便您可以在导入时的代码。这种情况没有发生,我仍然在寻找这样的解决方案。

答案 1 :(得分:1)

该错误表示类路径中缺少相关的类。搜索此类表示可在hector-core

中找到

This discussion表示如何导入此依赖项,即。将以下条目添加到项目pom中(或在m2eclipse中适当选择)。

<dependency>
    <groupId>me.prettyprint</groupId>
    <artifactId>hector-core</artifactId>
    <version>0.7.0-29</version>
</dependency>