清除本地Maven存储库后出现的问题

时间:2018-07-28 04:51:38

标签: java maven-3 artifactory

我使用以下版本的maven(v3.5.4),并且我发现我最近删除了maven本地存储库(〜/ .m2 / repository),以节省一些空间以应对紧急情况,认为该本地副本也会被存储在我的存储库管理器(JFrog Artifactory)中的某个位置。

$ mvn --version
Apache Maven 3.5.4 (1edded0938998edf8bf061f1ceb3cfdeccf443fe; 2018-06-18T00:03:14+05:30)
Maven home: /opt/maven
Java version: 1.8.0_171, vendor: Oracle Corporation, runtime: /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.171-8.b10.el7_5.x86_64/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "3.10.0-862.3.2.el7.x86_64", arch: "amd64", family: 

但是在删除本地存储库之后,我增加了服务器空间,然后开始编译一些Java项目,该项目因依赖项错误而开始失败。

要澄清以下几点吗?

  • 此本地存储库也存储在存储库管理器(JFrog Artifactory)服务器中吗?如果没有存储,是否有办法做到这一点,使我们不再面对这个问题?
  • 在删除本地Maven存储库(〜/ .m2 /存储库)之前,我们需要采取任何预防措施吗?

1 个答案:

答案 0 :(得分:1)

本地存储库主要用作远程存储库的缓存。它将包含您从远程存储库下载的任何人工制品,以及作为构建的一部分上传的人工制品。

如果您执行mvn install,则伪像只会进入本地存储库;对于mvn deploy,它将转到本地存储库和远程存储库。

因此,“此本地存储库是否存储在工件中”:不是自动进行的。您需要部署人工制品。

“在删除本地Maven存储库之前,我们需要采取任何预防措施吗”:否。但是,您将永久删除仅存储在本地的所有文物。通常这不是问题,因为您将部署您想保留的文物。