Maven:向 POM 添加依赖项后更新存储库的命令

问题描述 投票:0回答:4

我已向我的 POM 添加了新的依赖项。

我可以运行一个简单的命令来将此依赖项下载到我的存储库吗?

maven-2 maven-dependency
4个回答
836
投票

根据 其他答案,Maven 将下载依赖项作为

mvn compile
mvn install
等的一部分。 默认情况下,它发生在默认生命周期
generate-sources 阶段 - 因此从 generate-sources 调用任何阶段
 之后将下载依赖项。

如果您只想下载依赖项而不进行编译等其他活动,那么它是:

mvn dependency:resolve
或者下载单个依赖项:

mvn dependency:get -Dartifact=groupId:artifactId:version
如果需要从特定存储库下载,可以使用 

-DrepoUrl=...

 指定
    


248
投票

mvn install

(或
mvn package
)永远有效。

您可以使用

mvn compile

 下载编译时依赖项,或使用 
mvn test
 下载编译时和测试依赖项,但我更喜欢始终有效的东西。


13
投票
我知道这是一个老问题了,但是对于使用

Maven

 插件并在 
Eclipse
 下使用 
Windows
 的用户,您有两个选择:

  1. 如果您将 Maven 作为独立应用程序安装:

    您可以在您的项目下的

    CMD

    中使用以下命令
    路径:

    mvn eclipse:eclipse
    
    
    它将使用所有丢失的 jar 更新您的存储库,根据 到您的

    pom.xml

     文件中的依赖项。

  2. 如果您还没有将 Maven 作为独立应用程序安装,您可以 可以在你的 eclipse 上按照以下步骤操作:

    右键单击

    project

     ->
    Run As
     - >
    Run configurations

    然后选择

    mavenBuild

    然后单击

    new

     按钮创建所选配置
    类型。单击浏览工作区,然后选择您的项目并在
    目标明确 
    eclipse:eclipse

您可以参考

如何运行命令 mvn eclipse:eclipse 了解更多详情。


-1
投票
注意你的依赖范围 我遇到的问题是,当我通过 Intellij 调用 clean 编译时,pom 会被下载,但 jar 不会。创建了一个 xxx.jar.lastUpdated 文件。然后意识到依赖范围是测试,但我正在触发编译。我删除了存储库,并触发了 mvn 测试,问题已解决。

© www.soinside.com 2019 - 2024. All rights reserved.