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

IntelliJ中Jakarta EE插件JAXB生成代码遇206错误求助

解决IntelliJ中JAXB插件生成Java类时的CreateProcess error=206错误

问题描述

在IntelliJ中通过菜单Tools > XML Actions > Generate Java Code from XML schema using JAXB(由Jakarta EE Webservices (JAX-WS)插件提供)从XSD生成JAXB类时,出现错误:

Cannot run program "C:\Java\tomcat9\jvm\oraclejdk-11.0.18.0.2\bin\java.exe": CreateProcess error=206, The filename or extension is too long

已尝试但无效的操作:

  • 在workspace.xml中添加dynamic.classpath = true
  • 在VM选项中添加-Didea.dynamic.classpath=true
  • 将JVM和XSD文件移至C:/根目录

疑问:该插件是否有独立配置?如何解决此问题?

可行解决方案

1. 直接用jaxb-xjc命令行工具生成

绕过IntelliJ插件的执行逻辑,直接使用JAXB官方的命令行工具:

  • 确认JDK/bin目录下存在xjc.exe(JDK8及以前自带,JDK9+需单独下载Jakarta JAXB工具包)
  • 打开命令提示符,执行生成命令:
    xjc -d 输出目录路径 -p 目标包名 你的XSD文件路径
    
    示例:xjc -d ./src/main/java -p com.example.model ./src/main/resources/schema/order.xsd

2. 配置插件的独立VM参数

Jakarta EE Webservices插件有独立的配置入口,可按以下步骤调整:

  • 打开IntelliJ设置(快捷键:Windows/Linux按Ctrl+Alt+S,Mac按Cmd+,)
  • 导航到Build, Execution, Deployment > Build Tools > Maven > Runner(Maven项目),或Build, Execution, Deployment > Compiler > Java Compiler
  • 在VM Options中添加-Didea.dynamic.classpath=true,同时可追加-Xmx512m提升内存
  • 另外,在Settings > Plugins > Installed找到Jakarta EE Webservices (JAX-WS)插件,点击Configure(若有),检查是否有专属的JAXB生成配置项,调整Java路径或类路径参数

3. 缩短项目根目录路径

项目路径层级过深会导致类路径拼接后超长,可将整个项目迁移到更简短的路径下,比如C:\proj\my-app,避免多层嵌套目录

4. 换用右键菜单的生成方式

右键点击目标XSD文件,选择Generate > JAXB Classes,这种生成逻辑可能不依赖插件的默认类路径配置,能绕过长度限制问题

内容的提问来源于stack exchange,提问作者Loïc Gammaitoni

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.26 07:16:10