Chain Maven Repository在远程服务器

时间:2018-06-18 13:55:09

标签: maven

我正在尝试将maven链接到从本地文件系统获取依赖项,然后才能在远程服务器中查找它们。

的settings.xml

<repository>
  <snapshots>
    <enabled>true</enabled>
  </snapshots>
  <releases>
    <enabled>true</enabled>
  </releases>
  <id>local</id>
  <name>libs-local-release</name>
  <url>file:///E:/project-folder/jars</url>
</repository>
<repository>
  <snapshots>
    <enabled>false</enabled>
  </snapshots>
  <id>central</id>
  <name>libs-release</name>
  <url>https://www.repositoryURL.com/libs-release</url>
</repository>

mvn verify -U的控制台结果

Downloading from local: file:///E:/project-folder/jars/package/dependency/maven-metadata.xml
Downloading from central: https://www.repositoryURL.com/libs-release/package/dependency/maven-metadata.xml
Downloaded from central: https://www.repositoryURL.com/libs-release/package/dependency/maven-metadata.xml (2.1 kB at 45 kB/s)
Downloading from local: file:///E:/project-folder/jars/package/dependency/1.0.0.007/dependency-1.0.0.007.pom
Downloaded from local: file:///E:/project-folder/jars/package/dependency/1.0.0.007/dependency-1.0.0.007.pom (4.3 kB at 287 kB/s)
Downloading from local: file:///E:/project-folder/jars/package/dependency/1.0.0.172/dependency-1.0.0.172.pom
Downloaded from local: file:///E:/project-folder/jars/package/dependency/1.0.0.172/dependency-1.0.0.172.pom (4.3 kB)
Downloading from local: file:///E:/project-folder/jars/package/dependency/1.0.0.173/dependency-1.0.0.173.pom
Downloaded from local: file:///E:/project-folder/jars/package/dependency/1.0.0.173/dependency-1.0.0.173.pom (4.3 kB)
Downloading from local: file:///E:/project-folder/jars/package/dependency/1.0.0.174/dependency-1.0.0.174.pom
Downloaded from local: file:///E:/project-folder/jars/package/dependency/1.0.0.174/dependency-1.0.0.174.pom (4.3 kB at 269 kB/s)
Downloading from local: file:///E:/project-folder/jars/package/dependency/1.0.0.175/dependency-1.0.0.175.pom
Downloaded from local: file:///E:/project-folder/jars/package/dependency/1.0.0.175/dependency-1.0.0.175.pom (4.3 kB)
Downloading from local: file:///E:/project-folder/jars/package/dependency/1.0.0.176/dependency-1.0.0.176.pom
Downloaded from local: file:///E:/project-folder/jars/package/dependency/1.0.0.176/dependency-1.0.0.176.pom (4.3 kB at 287 kB/s)

正如您所看到的,Maven从我的文件系统和服务器下载依赖项,但localRepository (%USERPROFILE%\.m2\repository)似乎是使用服务器中的依赖项而不是我的文件系统进行更新。

如何配置它以使本地jar文件(来自filesystem repo)优先于远程jar文件?

1 个答案:

答案 0 :(得分:0)

我不完全确定你想要达到什么目标,但我尽我所能:

Maven有一个专用的本地存储库(你提到的那个,C:\%USERPROFILE%\.m2\repository)。它总是首先看起来。无需为此配置任何内容。

SNAPSHOT依赖项是一个例外,因为它们可以更改,因此Maven也可以(定期)在远程存储库中查找它们。

从远程存储库下载的所有内容都存储在本地存储库中,以便在下次尝试时,Maven不需要再次下载。

如果您有需要的罐子,但是没有Maven存储库,您可以通过多种方式处理这种情况,具体取决于罐子数量,用户数量等。