java - 如何将 Artifact 和所有依赖项递归下载到目录中?

标签 java maven jar dependencies

我工作时没有互联网连接,但我想带一个特定的图书馆去那里。

因此,我希望能够在家下载一个 Artifact 及其所有依赖项(递归地),以便能够获取所有这些 jar 并使它们正常工作。

我在这个网站上阅读了有关 dependency:get 的内容,这很棒,但会将 Artifact 下载到本地 Maven 存储库 (~/.m2/repository)。这意味着下载后,我需要查看 pom 文件并手动将所有依赖的 JAR 文件复制到某个目录,然后我就可以将其投入工作。

我希望有一种方法可以简单地将所需的 JAR 及其所有依赖项下载到特定文件夹中。

有没有办法实现这个目标?

请注意:这个问题与提到的重复问题不同,因为我问的是如何在没有任何项目或 pom.xml 文件的情况下执行此操作。我正在寻找最简单的方法来做到这一点。

编辑:我相信我找到了一个可能的解决方案(虽然不是最优雅的..):

  1. 将本地存储库(在我的 Windows 计算机上为 ~\.m2\repository)重命名为 repository.old。在同一位置创建一个空目录repository

  2. 运行

    mvn dependency:get -Dartifact=<groupid>:<artifactid>:<version>
    

    这不需要 pom.xml 或项目。

  3. Artifact 和依赖项已下载到您本地先前为空的存储库 (~\.m2\repository)。

  4. 将本地存储库移动到任意位置,并将 repository.old 重命名回 repository

(我认为)您现在拥有所需 Artifact 的所有依赖项。

最佳答案

dependency:get 将加载 .m2 中您需要的所有内容,然后当您离线时您会很好。我认为您不需要做任何其他事情。

当您在家时,通过断开计算机的网络连接来进行测试。

关于java - 如何将 Artifact 和所有依赖项递归下载到目录中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37228358/

相关文章:

Java生日悖论算法

java - 如何识别特定的 USB 端口

wsdl - 将 wsdl 文件安装到 Maven 存储库中

java - 找不到主类,程序将退出

java - 如何在基于范围的 for 循环内获取进度信息?

java - 如何使用不同的资源文件夹配置 Maven 配置文件?

java - 运行简单的 Maven 项目后出现此错误

java - sun.tools.jmap.JMap.main 无法识别

java - 从插件重新编译反编译的类

java - GWT 从 uiBinder 恢复可见性限制