我有一些个人项目,很少有公司项目.企业项目使用镜像的企业SVN仓库来实现maven依赖.我想以这样的方式配置我的settings.xml,以便首先根据我的公司镜像检查依赖项.只有在这里找不到依赖项时(对于我的个人项目),它才应该检查由我的公司仓库镜像的原始"中央"仓库.这可能吗.下面是我现在所拥有的片段,但在需要时它没有点击"中央"回购.谢谢.
<servers>
<server>
<id>central-mirror</id>
<username>myusername</username>
<password>mypassword</password>
<filePermissions>664</filePermissions>
<directoryPermissions>775</directoryPermissions>
<configuration></configuration>
</server>
</servers>
<mirrors>
<mirror>
<id>central-mirror</id>
<url>https://url.to.my/mirror</url>
<mirrorOf>central</mirrorOf>
</mirror>
</mirrors>
<proxies>
<proxy>
<id>proxy</id>
<active>true</active>
<protocol>http</protocol>
<host>my.corporate.proxy</host>
<port>8080</port>
<nonProxyHosts>localhost|*.my.corporate.proxy</nonProxyHosts>
</proxy>
Run Code Online (Sandbox Code Playgroud)
经过一些试验和错误后我终于想出了如何做到这一点.我希望这会有助于其他许多人.下面是我更新的settings.xml.对于Eclipse中的任何项目,maven首先尝试从我的公司镜像下载libs.只有当它无法在那里找到它时,才能从中央回购中获取它.
<servers>
<server>
<id>central-mirror</id>
<username>myusername</username>
<password>mypassword</password>
<filePermissions>664</filePermissions>
<directoryPermissions>775</directoryPermissions>
<configuration></configuration>
</server>
</servers>
<mirrors>
<mirror>
<id>central-mirror</id>
<url>https://url.to.my/mirror</url>
<mirrorOf>*,!central</mirrorOf>
</mirror>
</mirrors>
<proxies>
<proxy>
<id>proxy</id>
<active>true</active>
<protocol>http</protocol>
<host>my.corporate.proxy</host>
<port>8080</port>
<nonProxyHosts>localhost|*.my.corporate.proxy</nonProxyHosts>
</proxy>
<profiles>
<profile>
<activeByDefault>true</activeByDefault>
<repositories>
<repository>
<id>central-mirror</id>
<url>https://url.to.my/mirror</url>
</repository>
</repositories>
</profile>
</profiles
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5727 次 |
| 最近记录: |