我公司的政策对自动下载的工件(它们必须得到批准)不满意,所以为了使用Maven,我需要禁用对Maven中央存储库的访问.
换句话说,我不希望Maven尝试从中央进行任何下载.
我知道如何配置本地存储库(联网或不联网),我的想法是使用"祝福"机器来更新本地存储库.
PS:我可以阻止代理/网络级别的请求,但我问的是如何使用Maven的配置.
更新
我终于想出了如何做到这一点.在maven的家中,conf目录中是全局的settings.xml.您可以将镜像设置为central指向某个内部服务器,也可以覆盖它的定义.
我有一个settings.xml适用于所有Maven项目的通用文件,其中定义了默认配置文件以及服务器和镜像.如何使用项目特定的设置忽略默认设置?
我可以指向settings.xml一个特定Maven项目的本地文件吗?
传递带--settings参数的本地设置文件也可以,但是没有办法永久地执行此操作?
我在.m2中有以下内容,禁用默认远程仓库:
<?xml version="1.0" encoding="UTF-8"?>
<settings>
<mirrors>
<mirror>
<id>my.mirror</id>
<name>My Mirror</name>
<url>https://repo.maven.apache.org/alwaysfail</url>
<mirrorOf>*</mirrorOf>
</mirror>
</mirrors>
Run Code Online (Sandbox Code Playgroud)
现在我在我的项目pom.xml中添加了这个
<repositories>
<repository>
<id>myproject.repo</id>
<url>https://repo.maven.apache.org/maven2</url>
</repository>
</repositories>
Run Code Online (Sandbox Code Playgroud)
但它没有拿起我的项目特定的远程仓库并开始下载,我做错了什么?