You need to enable JavaScript to run this app. 编写含jobs嵌入式文档的POJO遇Java public类Profile文件命名编译错误
优惠活动
大模型
产品
解决方案
定价
更多

编写含jobs嵌入式文档的POJO遇Java public类Profile文件命名编译错误

编译报错根因

该报错由Java编译器的强制语法规则校验触发:被public修饰的顶级类,必须和其所在源文件的文件名完全匹配(大小写、字符序列完全一致),不允许存在文件名与public类名不匹配的情况。
触发报错的原提示为:
java: class Profile is public, should be declared in a file named Profile.java
对应逻辑为:代码中定义的public类名为Profile,但该类当前存放的源文件名称与Profile不匹配。

对应修复操作
  • 定位存放Profile类的源文件,将文件名修改为和public类名严格完全一致的Profile.java。Java语法对文件名大小写敏感,禁止命名为profile.java、Profile1.java这类存在字符或大小写差异的名称
  • 检查同文件内的类定义,确保单个.java源文件内最多仅存在一个public顶级类,禁止将多个public类写在同一个源文件中
  • 结合嵌入式jobs文档的非结构化数据POJO编写场景,保持结构合规:
    • 非嵌入式的普通字段直接作为Profile类的成员变量定义
    • 嵌入式文档jobs根据实际结构适配定义:单值场景直接定义为对应Java类型的成员变量,多值场景定义为对应泛型的集合(如List<Job>)
    • 为POJO补充无参构造方法、全参构造方法、成员变量的get/set方法,符合Java Bean的编码规范

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.11.04 11:15:09