Hacktoberfest 2026:维护者为十月标记出来的 issue,仍然开放、适合新手。 浏览 Hacktoberfest issue

[Question] [Bug]: Inconsistent Relative Reference Resolution in Nested Schema Contexts

未关闭
#2,256 1 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

评估

难度
4/5
预计耗时
3-5 天
新手友好度
35/100
Issue 类型
缺陷
描述清晰度
需要澄清
活跃度
停滞
技术栈
java
领域
api

调研方向

从 OpenAPITools/openapi-generator#21492 中的复现上下文开始,检查通过嵌套的 additionalProperties schema 解析相对 $ref 值时如何处理 parentDirectory。根据 OpenAPI 3.0 的文件相对规则验证行为,包括 path-file 和 schema-file 引用;当嵌套引用能够一致地解析且不会导致构建失败时,即表示完成。

由索引模型根据 Issue 内容生成。

描述

Question

Question

There seems to be a bug when resolving nested schemas.

OpenAPI Generator incorrectly resolves relative $ref paths in schema files when they are referenced through nested contexts (like additionalProperties). The reference resolution context switches from file-relative to root-relative depending on the nesting level, causing build failures when using standard file-relative references.

This creates inconsistent behavior where:

References from path files work correctly using file-relative paths (../components/schemas/...)
References from schema files fail when using file-relative paths (NestedData.yaml)

This violates the OpenAPI 3.0 specification where all relative references should be resolved from the containing file's location.

Any ideas? parentDirectory seems to be resolved wrongly in this case?

Affected Version

Latest

Context

This issue first reported here: https://github.com/OpenAPITools/openapi-generator/issues/21492 (the project uses this library)

# Example OpenAPI or Swagger definition (optional)

Additional Details

Checklist

  • I have searched the existing issues and documentation before asking.
  • I have provided enough information for others to understand my question.
主要语言
Java
星标
868
派生
560
PR 合并指标
30 天内没有已合并 PR

环境准备

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

swagger-api/swagger-parser 的其他 Issue

查看 swagger-api/swagger-parser 的全部 Issue

相似的 Issue

更多 Java Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。