You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Maven Assembly插件未遵循仓库配置问题排查求助

可能的原因及排查方向
  • 全局settings.xml配置未覆盖:如果内部Nexus仅在项目pom.xml的<repositories>中配置,但Maven全局settings.xml(通常位于~/.m2/settings.xml或Maven安装目录的conf/settings.xml)里仍保留默认central仓库指向Maven Central,Maven会优先使用全局配置。需检查全局settings中的<repositories>和<pluginRepositories>,确保central仓库的URL指向内部Nexus,或通过镜像将所有请求路由到Nexus。

  • 未同步配置插件仓库:Assembly插件自身的依赖(如打包所需组件)是从<pluginRepositories>拉取的,而非普通<repositories>。若仅配置了普通仓库,未在<pluginRepositories>中同样设置Nexus作为central仓库,插件相关依赖会直接请求Maven Central。

  • 镜像(Mirror)配置错误:若全局settings中配置了镜像,但<mirrorOf>属性未正确匹配central仓库,或镜像URL未指向内部Nexus,Maven仍会访问官方Central。正确的镜像配置示例:

    <mirrors>
      <mirror>
        <id>nexus-central</id>
        <mirrorOf>central</mirrorOf>
        <url>http://your-nexus-url/repository/maven-public/</url>
      </mirror>
    </mirrors>
    
  • 仓库发布/快照开关设置错误:检查Nexus仓库的配置,确保<releases>和<snapshots>的enabled属性与依赖类型匹配。例如,若依赖是release版本,但Nexus仓库的<releases><enabled>false</enabled></releases>,Maven会跳过该仓库,转而请求官方Central。

  • 本地仓库缓存干扰:本地.m2/repository中可能缓存了部分依赖的错误仓库元数据,导致Maven直接根据缓存访问官方Central。可尝试删除本地仓库中对应依赖的目录,重新执行构建验证是否走Nexus。

  • Assembly插件依赖解析逻辑问题:部分场景下,Assembly插件构建包时会解析额外依赖(如辅助打包组件),这些依赖可能未继承项目的仓库配置。可检查插件配置是否显式指定了依赖来源,或尝试升级Assembly插件至最新稳定版本。

内容的提问来源于stack exchange,提问作者Mark VY

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.20 02:15:01