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

Maven执行clean verify遇JAXB/CXF方法缺失及405错误求助

问题解决方案

一、解决java.lang.NoSuchMethodError(JAXB方法找不到)

这个错误核心是CXF版本与JAXB依赖版本不兼容,或存在JAXB依赖冲突,按以下步骤排查:

  1. 统一CXF版本
    确保项目中所有CXF相关依赖(如cxf-core、cxf-rt-frontend-jaxws、cxf-rt-transports-http等)使用同一版本,避免跨版本依赖冲突。可在dependencyManagement中锁定版本:
<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>org.apache.cxf</groupId>
            <artifactId>cxf-bom</artifactId>
            <version>3.5.5</version> <!-- 替换为你的CXF版本 -->
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>
  1. 排除冲突的JAXB依赖
    检查pom.xml中所有依赖,排除引入的旧版JAXB API/实现。例如第三方依赖可能引入低版本jaxb-api,通过<exclusions>移除:
<dependency>
    <groupId>第三方依赖groupId</groupId>
    <artifactId>第三方依赖artifactId</artifactId>
    <exclusions>
        <exclusion>
            <groupId>javax.xml.bind</groupId>
            <artifactId>jaxb-api</artifactId>
        </exclusion>
        <exclusion>
            <groupId>com.sun.xml.bind</groupId>
            <artifactId>jaxb-impl</artifactId>
        </exclusion>
    </exclusions>
</dependency>
  1. 显式声明兼容的JAXB依赖
    根据CXF版本引入匹配的JAXB API和实现,CXF 3.x系列推荐搭配JAXB 2.3.x版本:
<!-- JAXB API -->
<dependency>
    <groupId>javax.xml.bind</groupId>
    <artifactId>jaxb-api</artifactId>
    <version>2.3.1</version>
</dependency>
<!-- JAXB 运行时实现 -->
<dependency>
    <groupId>org.glassfish.jaxb</groupId>
    <artifactId>jaxb-runtime</artifactId>
    <version>2.3.1</version>
    <scope>runtime</scope>
</dependency>

二、解决HTTP 405 Method Not Allowed

这个错误是请求的HTTP方法与服务端接口定义不匹配,或路由配置错误,排查方向:

  1. 核对接口注解与请求方法
  • SOAP服务:检查@WebMethod注解的接口,确认客户端请求的SOAPAction与接口定义一致;
  • REST服务:检查@GET/@POST/@PUT等HTTP方法注解是否与实际请求方法匹配,@Path注解的路径是否和请求URL一致。
  1. 检查CXF服务配置
  • Spring整合场景:确认jaxws:endpoint或jaxrs:server的address配置正确,无路径拼写错误;
  • 排查是否存在拦截器过滤了特定HTTP方法,比如自定义拦截器拒绝了POST请求。
  1. 验证请求细节
    确认测试时使用的请求URL、HTTP方法(如GET/POST)、请求头是否符合接口要求,可通过Postman等工具直接发送请求排查。

请补充以下信息以便精准定位:

  • 项目使用的CXF具体版本
  • pom.xml完整内容(可隐藏敏感信息)
  • 405错误对应的请求URL、HTTP方法及接口代码片段
  • 完整的报错栈信息

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.02 04:52:42