我工作时没有互联网连接,但我想带一个特定的图书馆去那里。
因此,我希望能够在家下载一个 Artifact 及其所有依赖项(递归地),以便能够获取所有这些 jar 并使它们正常工作。
我在这个网站上阅读了有关 dependency:get
的内容,这很棒,但会将 Artifact 下载到本地 Maven 存储库 (~/.m2/repository
)。这意味着下载后,我需要查看 pom
文件并手动将所有依赖的 JAR 文件复制到某个目录,然后我就可以将其投入工作。
我希望有一种方法可以简单地将所需的 JAR 及其所有依赖项下载到特定文件夹中。
有没有办法实现这个目标?
请注意:这个问题与提到的重复问题不同,因为我问的是如何在没有任何项目或 pom.xml
文件的情况下执行此操作。我正在寻找最简单的方法来做到这一点。
编辑:我相信我找到了一个可能的解决方案(虽然不是最优雅的..):
将本地存储库(在我的 Windows 计算机上为
~\.m2\repository
)重命名为repository.old
。在同一位置创建一个空目录repository
。运行
mvn dependency:get -Dartifact=<groupid>:<artifactid>:<version>
这不需要
pom.xml
或项目。Artifact 和依赖项已下载到您本地先前为空的存储库 (
~\.m2\repository
)。将本地存储库移动到任意位置,并将
repository.old
重命名回repository
。
(我认为)您现在拥有所需 Artifact 的所有依赖项。
最佳答案
dependency:get
将加载 .m2
中您需要的所有内容,然后当您离线时您会很好。我认为您不需要做任何其他事情。
当您在家时,通过断开计算机的网络连接来进行测试。
关于java - 如何将 Artifact 和所有依赖项递归下载到目录中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37228358/