将Maven项目导入Eclipse IDE后如何构建和运行

48

我正在学习如何在Eclipse中使用Maven构建Java项目。我使用了“maven-archetype-quickstart”模板创建了一个名为HelloWorld的Java项目,并将其放在D:/maven_projects文件夹中。然后,为了将Maven项目转换为支持Eclipse IDE,我进入了项目文件夹并执行以下命令:mvn eclipse:eclipsemvn package

接下来,我将项目导入Eclipse并进行了必要的配置(如在Eclipse类路径中设置Maven本地仓库)。现在,项目位于D:/EclipseWorkspace文件夹中。我在Eclipse中成功运行了该项目,并输出了“helloworld”。

现在,如果我想继续开发该项目并且出于这个原因想在pom.xml中添加新的依赖项,那么当我运行该项目时新的JAR包将不会添加到类路径中。

因此,我的问题是,在将Maven项目导入Eclipse后,如何向pom.xml中添加更多依赖项,然后构建和运行项目?有什么推荐和有效的方法吗?

9个回答

53
我建议您不要使用m2eclipse命令行工具(即mvn eclipse:eclipse),而是使用内置的Maven支持,称为m2e
从Eclipse中删除您的项目,然后在该项目上运行mvn eclipse:clean以删除m2eclipse项目数据。最后,在一个现代化的Eclipse版本中,只需执行“导入 > Maven > 将现有项目导入工作区...”,并选择您的pom.xml文件。
M2e将自动管理您的依赖项,并根据需要下载它们。它还通过新的“作为Maven构建运行...”接口支持Maven构建。这相当棒。

2
这是否意味着我只需要将项目导入 Eclipse 一次,然后根据需要添加依赖项,m2e 将自动将 jar 添加到类路径并构建项目? - mukund

25

1.更新项目

右键单击项目maven > 更新项目

2.构建项目

再次右键单击您的项目。运行为 > Maven构建

如果您尚未创建“运行配置”,它将打开一个新的配置并填充一些自动值。

您可以更改名称。 "基本目录" 将自动填充一个值给你。保持不变。在“Goals”字段中给出Maven命令,例如 "clean install" 以进行构建。

点击应用

点击运行。

3.在tomcat上运行项目

再次右键单击您的项目。运行为 > 运行配置。 它将为您打开运行配置窗口。

从右侧列中右键单击“Maven Build”,然后选择“新建”。 这将为您打开空白配置。

更改名称。对于基本目录字段,您可以使用3个按钮(工作区,文件系统,变量)选择值。您还可以复制和粘贴先前创建的运行配置中自动生成的值。将Goals设置为“tomcat:run”。 点击应用。 点击运行。

如果您想使用快照获取更清晰的想法,请使用以下链接。

在Eclipse中构建和运行Maven项目

(我希望这个答案能够帮助到在问题主题之后寻求帮助的人)


似乎链接(在Eclipse中构建和运行Maven项目)无法使用? - Madhu Tomy
1
@MadhuTomy的链接已经修复。 - Yasitha Bandara

18

在Eclipse中使用m2e插件,通过"Maven --> Update Project.."更新项目来更新依赖关系,在修改pom.xml文件后。 基于pom.xml更改的Maven项目更新


5

只需安装 Eclipse 的 m2e 插件。然后会在 Eclipse 的导入语句中添加一个名为“导入现有 maven 项目”的新命令。


3

回答1

  1. 在eclipse中右键单击您的项目
  2. 转到maven-> 更新项目

回答2

更新pom.xml后,只需按下Alt + F5即可。 这将再次构建您的项目并下载所有jar文件。


1
当您在 pom.xml 中添加依赖项后,执行 maven clean ,然后执行 maven build ,它会将 jar 包添加到您的项目中。
您可以在 http://mvnrepository.com/ 上搜索依赖项。
如果它没有添加 jar 包,它应该会给出错误,这意味着它无法获取 jar 包,可能是由于破损的仓库或连接问题。
好吧,有时候如果只有一个或两个 jar 包,最好下载它们并将其添加到构建路径中,但是对于很多依赖项,请使用 maven。

1
  1. 右键单击您的项目
  2. 转到Maven>更新项目
  3. 勾选强制更新快照/发布复选框
  4. 点击确定

就这样。您可以在左下角看到构建进度。


0

运行一次Maven构建,问题就应该解决了。


0
    If you are getting this error :in cucumber Exception
Cucumber Exception: java.lang.ClassNotFoundException: 
cucumber.io.ResourceLoader : 
then add following jar file to your pom.xml
    <dependency>
            <groupId>info.cukes</groupId>
            <artifactId>cucumber-core</artifactId>
            <version>1.1.8</version>
        </dependency>

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接