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

rewrite-maven-plugin解析POM耗时久:如何指定排除无法访问的仓库?

解决rewrite-maven-plugin仓库超时停滞问题

可以通过以下几种方式排除无法访问的仓库,避免插件长时间停滞:

1. 在Maven settings.xml中标记仓库为不可用

找到Maven settings.xml文件(通常在~/.m2/settings.xml或项目根目录),添加配置将受防火墙限制的仓库标记为blocked,Maven会直接跳过这些仓库的访问尝试:

<settings>
  <profiles>
    <profile>
      <id>block-unreachable-repos</id>
      <activation>
        <activeByDefault>true</activeByDefault>
      </activation>
      <repositories>
        <repository>
          <id>some-nexus-releases</id>
          <url>http://some.nexushost/content/repositories/releases/</url>
          <blocked>true</blocked>
        </repository>
        <repository>
          <id>some-nexus-thirdparty</id>
          <url>http://some.nexushost/content/repositories/thirdparty/</url>
          <blocked>true</blocked>
        </repository>
      </repositories>
    </profile>
  </profiles>
</settings>

2. 在rewrite插件配置中显式指定可用仓库

直接在项目pom.xml的rewrite-maven-plugin配置里,只列出可正常访问的仓库,覆盖项目默认的仓库列表,插件只会尝试访问这些指定仓库:

<plugin>
  <groupId>org.openrewrite.maven</groupId>
  <artifactId>rewrite-maven-plugin</artifactId>
  <version>5.42.0</version>
  <configuration>
    <activeRecipes>
      <recipe>org.openrewrite.java.spring.boot2.SpringBoot2JUnit4to5Migration</recipe>
      <recipe>org.openrewrite.java.testing.cleanup.TestsShouldNotBePublic</recipe>
    </activeRecipes>
    <repositories>
      <repository>
        <id>central</id>
        <url>https://repo1.maven.org/maven2/</url>
      </repository>
      <!-- 按需添加其他可访问的仓库 -->
    </repositories>
  </configuration>
</plugin>

3. 缩短仓库访问超时时间(临时缓解)

如果不想排除仓库,可通过settings.xml缩短连接和读取超时时间,减少等待时长:

<settings>
  <servers>
    <server>
      <id>some-nexus-releases</id>
      <configuration>
        <connectTimeout>5000</connectTimeout> <!-- 5秒连接超时 -->
        <readTimeout>10000</readTimeout> <!-- 10秒读取超时 -->
      </configuration>
    </server>
    <server>
      <id>some-nexus-thirdparty</id>
      <configuration>
        <connectTimeout>5000</connectTimeout>
        <readTimeout>10000</readTimeout>
      </configuration>
    </server>
  </servers>
</settings>

内容的提问来源于stack exchange,提问作者Nicholas DiPiazza

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.17 08:22:21