外部JARとタイプマッピング

共通モジュールhandler/DTOがソースツリーの外にある場合、decompileとカスタムスキーママッパーを使用します。


クラス基準jar追加

java
var swaggerConfig = SwaggerJsonFileWatcher.Config.builder()
    .addDecompileJarClass(com.example.common.web.handler.ApiUploadHandler.class)
    .build();

指定されたクラスのコードソースからjarの位置を見つけ、CFRでデコンパイルしてルート/ハンドラー/タイプ分析の範囲を広げます。直接jarパスを追加する addDecompileJar も提供します。

custom type schema

java
var swaggerConfig = SwaggerJsonFileWatcher.Config.builder()
    .customTypeMapper((type, schema) -> {
      if (type == Long.class || type == BigDecimal.class || type == BigInteger.class) {
        schema.put("type", "integer");
        schema.put("format", "int64");
        return true;
      }
      return false;
    })
    .build();

predicateがtrueを返すと、該当するタイプのスキーマをカスタムマッピングで処理します。プロジェクトでJSONシリアル化形式とOpenAPIスキーマが異なる数値・日付ラッパーに使用できます。

sourceClasspath

symbol solverが外部ソースまたはコンパイルされたクラスを見つけられない場合、addSourceClasspathとsourceClasspathを使用します。単にインポートが存在するだけでは、パーサーがすべてのジェネリックタイプを解釈できるわけではありません。

© 2026 Byeolnaerim. 無断転載を禁じます。紹介プライバシーポリシー