在我的settings.xml中,有一个镜像条目,如下所示:

<mirror>
    <id>corporate-vpn</id>
    <name>Approved Corporate Java</name>
    <url>https://some-url-available-in-vpn-only/repository/maven-public</url>
    <mirrorOf>*</mirrorOf>
</mirror>

只要我连接到VPN,它就像一个魔咒一样工作.有时它不可用,所以我需要直接连接到Maven Central(和其他).目前,我通过注释掉镜像条目来做到这一点(主要是在MVN失败之后).

我想知道有没有更好的方法,以便MVN在不可用时跳过镜像?

新的转折:https://some-url-available-in-vpn-only有一个公共登录页面,上面写着:go 使用虚拟专用网.

推荐答案

目前,这是不可能在简单的本地方式.

有一个悬而未决的问题:https://issues.apache.org/jira/browse/MNG-5698 建议在profiles中定义mirrors

现在你必须保持settings.xml家庭使用和企业使用在不同的文件.第settings章就像你写的

一种方法是有两个文件,为了便于切换,我在我的.bash_profile中定义了如下函数:

function _ms_home {
    echo "Switch default maven settings to home"
    pushd ~/.m2 > /dev/null
    ln -sfv settings-home.xml settings.xml
    popd > /dev/null
}

function _ms_work {
    echo "Switch default maven settings to work"
    pushd ~/.m2 > /dev/null
    ln -sfv settings-work.xml settings.xml
    popd > /dev/null
}

最后,我可以简单地在我的shell 中执行:根据我工作的当前环境:_ms_work_ms_home.

Java相关问答推荐

无法从TemporalAccessor获取Instant:{},ISO解析为2024-04- 25 T14:32:42类型为java.time. form.Parsed

填写文本字段后锁定PDF

多个Java线程和TreeMap.put()的非预期行为

使用java访问具体子类特定方法的最佳方法是什么?

使用标记时,场景大纲不在多个线程上运行

CompleteableFuture是否运行在不同的内核上?

JavaFX如何在MeshView中修复多个立方体?

如何从错误通道回复网关,使其不会挂起

用户填充的数组列表永不结束循环

为什么Collectors.toList()不能保证易变性

将ByteBuffer异步写入InputStream或Channel或类似对象

如何用内置Java从JavaFX应用程序中生成.exe文件?

项目react 堆中doOnComplete()和Subscribe()的第三个参数之间的差异

在使用具有不同成本的谓词调用allMatch之前对Java流进行排序会带来什么好处吗?

为什么我不能建立输入/输出流?Java ServerSocket

在缺少字段时使用Jackson With Options生成Optional.Empty()

如何对存储为字符串的大数字数组进行排序?

获取所有可以处理Invent.ACTION_MEDIA_BUTTON Android 13 API33的Android包

javax.crypto-密码对象-提供者服务是如何工作的?

JavaFX中ListView中的问题