如何从 maven pom 文件构建项目

2022-09-01 18:33:46

我有一个开源项目的maven pom文件。这个pom文件具有所有信息,例如它所依赖的其他jar等。我安装了 maven。创建了一个 dir samprj 并将 pom 文件复制到该 dir 中。Cd进入该dir并运行mvn命令,没有任何参数,但我得到了一堆错误。我对maven绝对是新手,所以我认为我错过了一些东西。我也尝试过从Eclipse(导入项目 - exisitng maven项目),但这也不起作用,除了eclipse创建一个只有该文件pom.xml的项目。我期望首先下载项目的jar,然后下载所有依赖的jar和配置文件,但那里什么都没有。那么给定一个pom文件,我如何从中构建项目?


答案 1

mvn install应该让你去


答案 2

我有一个开源项目的maven pom文件。这个pom文件具有所有信息,例如它所依赖的其他jar等。我安装了 maven。创建了一个 dir samprj 并将 pom 文件复制到该 dir ...

听起来你只有项目的POM文件。这还不够。您需要签出项目的完整源代码树。完成此操作后,将目录更改为包含POM文件的目录并运行 。mvn install

此外,不要将 POM 复制到其他目录。Maven 希望找到与 POM 文件位置相关的所有源文件。

跟进

感谢您的建议。我无法使用命令mvn install,因为它给出了错误。

可能是因为您没有签出源代码。

我不知道如何检查项目的源树...

使用 Subversion 客户端(例如命令)或 Eclipse Subversion 插件之一。svn

如果这是一个正确记录的项目,那么将有明确的说明,说明您需要哪些版本控制和构建工具,如何签出源代码以及如何构建它。

...因为我认为POM本身应该有这些信息,以便在源未签出时自动签出。

它不一定,尽管在这种特殊情况下它确实如此。

无论如何,我能够使用Eclipse构建项目而不会出现错误。

(其他读者可以阅读@icyrock.com 的答案,以获取指向m2eclipse插件和文档的链接。

唯一的问题是从属jar被下载,但隐藏在我的linux盒子上的.m2存储库文件夹中的深层路径。

但是我希望这些依赖的jar相对于POM文件所在的dir。

抱歉,但这不是Maven的工作方式。

该目录是 Maven 的基本部分。这不是问题。这是一个功能。(不要打架!~/.m2/repository


推荐