maven-2 - maven 仓库镜像

标签 maven-2

通常,我在我的 Maven 中配置了以下镜像 settings.xml

<mirror>
  <id>internal-repository</id>
  <url>http://build.idaho.local/wtp_repository</url>
  <mirrorOf>*</mirrorOf>
</mirror>

我的理解是这个镜像会阻止 Maven 从互联网下载依赖项,即它只会在这个内部存储库中查找它们。

但是,每当我想添加一个不在此内部存储库中的依赖项时,我必须注释掉上面的文本并将以下内容添加到项目的 pom.xml
<repository>
  <id>internal-repository</id>
  <url>http://build.idaho.local/wtp_repository</url>
</repository>

当我进行这些更改时,Maven 将检查本地存储库中的依赖关系,如果未找到,则将它们从 Internet 下载到本地存储库。一旦我有了我需要的依赖项,我就可以将我的配置改回来。

有没有办法获得我想要的行为 - 始终检查内部 repo ,然后是公共(public)(互联网) repo - 无需添加 <repository>给每个项目的pom.xml ?

理想情况下,我想在 settings.xml 中指定此存储库一次。 ,但似乎只能在那里配置镜像。

最佳答案

您可以尝试将 maven 配置为仅将镜像用于中央存储库或排除某些 id 标识的存储库。

<mirror>
    <id>internal-mirror</id>
    <url>http://build.idaho.local/wtp_repository</url>
   <mirrorOf>central</mirrorOf>
</mirror>

或者
<mirror>
    <id>internal-mirror</id>
    <url>http://build.idaho.local/wtp_repository</url>
   <mirrorOf>*,!internal-repository</mirrorOf>
</mirror>

示例改编自 maven settingsguide to mirror settings .

关于maven-2 - maven 仓库镜像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4972288/

相关文章:

java - Maven 2 构建 Java Web 服务?帮助

java - 使用 Maven 时如何更改 Eclipse 中的默认测试位置?

java - 马文 : How to deploy with deploy-file and custom wagon

maven-2 - 使用 Maven Jetty 插件部署 war 时获取 FileNotFoundException

maven-2 - 如何根据目标环境在Maven中复制资源或其他资源?

maven-2 - 是否可以挑出并运行绑定(bind)到 Maven 阶段的特定目标?

java - 如何更改maven的java路径

maven-2 - 如何让maven使用系统代理设置

Maven:在pom.xml 中设置settings.xml 位置?

maven - 集成测试前启动Apache tomcat服务器