在项目中不导入依赖项

时间:2013-03-31 08:06:19

标签: eclipse maven

我正在使用maven和eclipse 我在pom.xml中有struts和java ee依赖项

这是我的示例pom.xml

  <dependencies>
    <dependency>
               <groupId>junit</groupId>
               <artifactId>junit</artifactId>
               <version>3.8.1</version>
               <scope>test</scope>
    </dependency>
    <dependency>
        <groupId>javax</groupId>
        <artifactId>javaee-api</artifactId>
        <version>6.0</version>

    </dependency>

    <dependency>
        <groupId>struts</groupId>
        <artifactId>struts</artifactId>
        <version>1.2.9</version>
    </dependency>
  </dependencies>

我没有复制我的整个pom.xml

问题:所有依赖项中的jar都会下载并放入我的M2_REPO中。但是我的项目只使用了junit jar。我的项目不使用其他jar(struts和javaee)。 当我尝试导入包时,它失败了。

我的示例java程序:

package org.xinotes;

import org.apache.struts.action.ActionForm;

public class HelloForm extends ActionForm 
{
    private String name;

    public String getName() 
    {
    return this.name;
    }

    public void setName(String name) 
    {
    this.name = name;
    }
}

在这里,它给出了一个错误。它说“org.apache无法解决”。

2 个答案:

答案 0 :(得分:1)

除了Sebastien的回答,请检查您的偏好设置&gt; Classpath变量,以确保M2_REPO变量指向正确的路径。

答案 1 :(得分:0)

假设你安装了m2e:

  • 在Eclipse中右键单击您的项目;
  • 点击 Maven &gt; 更新项目...... ;
  • 确保在更新Maven项目窗口中勾选您的项目;单击“确定”;

然后应该更新项目依赖项,并且您的类应该编译。

另一种方法是从Maven生成Eclipse文件:

mvn eclipse:eclipse