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

升级maven-site-plugin至3.21.0后遇Doxia版本兼容错误求助

解决maven-site-plugin 3.21.0升级后的Doxia版本兼容问题

你升级maven-site-plugin到3.21.0以修复java.lang.NoSuchMethodError: 'void org.apache.maven.doxia.sink.Sink.verbatim()'错误后,遇到的新问题是站点皮肤与当前Doxia Sitetools版本不兼容——皮肤要求的Doxia版本范围是[1.11.1,2.0.0-M1),但插件自动引入了2.0.0版本。

以下是几种可行的解决方式:

  • 降级maven-site-plugin到兼容版本
    选择既修复原verbatim方法缺失问题,又依赖皮肤兼容的Doxia版本的插件版本,比如3.20.1。在pom.xml中配置:

    <build>
      <plugins>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-site-plugin</artifactId>
          <version>3.20.1</version>
        </plugin>
      </plugins>
    </build>
    
  • 升级站点皮肤到适配Doxia 2.0.0的版本
    如果你坚持使用3.21.0版本的插件,需要同步升级站点皮肤到支持Doxia 2.0.0的版本。以默认皮肤为例,修改pom.xml中的皮肤配置:

    <reporting>
      <plugins>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-site-plugin</artifactId>
          <version>3.21.0</version>
          <configuration>
            <skin>
              <groupId>org.apache.maven.skins</groupId>
              <artifactId>maven-default-skin</artifactId>
              <version>3.3.0</version>
            </skin>
          </configuration>
        </plugin>
      </plugins>
    </reporting>
    
  • 强制指定兼容的Doxia Sitetools版本
    在项目的dependencyManagement中强制锁定Doxia版本为皮肤要求的范围(比如1.11.1),但这种方式可能与3.21.0版本的插件存在潜在兼容风险,需要自行测试:

    <dependencyManagement>
      <dependencies>
        <dependency>
          <groupId>org.apache.maven.doxia</groupId>
          <artifactId>doxia-sitetools</artifactId>
          <version>1.11.1</version>
        </dependency>
      </dependencies>
    </dependencyManagement>
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.12 03:42:09