7

我通过每个用户的 settings.xml 文件为 Maven 配置了代理服务器。截断默认 settings.xml 模板的文档表明,可以通过命令行开关影响使用哪个已配置代理:

<!-- proxies
 | This is a list of proxies which can be used on this machine to connect to the network.
 | Unless otherwise specified (by system property or command-line switch), the first proxy
 | specification in this list marked as active will be used.
 |-->

但是,我没有找到任何关于这应该如何工作的文档。Maven 文档具有非常相同的模板,但没有提及任何命令行开关或其他内容。

因此,假设我配置了一个代理,但标记为<active>false</active>,如下例所示:

<proxies>
    <proxy>
        <id>firstProxy</id>
        <active>false</active>
        <protocol>http</protocol>
        <host>proxy.example.invalid</host>
        <port>3128</port>
    </proxy>
</proxies>

根据评论,会有一些方法可以“激活”它,可能会给出它的 id 或类似的东西。尝试使用“明显” mvn -Dproxies.proxy.firstProxy.active=true java:compile,但没有成功。

我对 Maven 很陌生,无法摆脱我以某种方式在错误的树上吠叫的感觉。我正在尝试做的事情是否可能——如果是这样,任何人都可以指出我如何做的描述——还是我在浪费我的时间?

4

1 回答 1

1

正如@khmarbaise 建议的那样:

使用许多 settings.xml,例如将它们放在项目根目录中

mvn package -s setings.A.xml

mvn package -s setings.B.xml
于 2015-07-27T15:35:13.103 回答