外部 JAR 與類型映射
當共用模組 handler/DTO 在來源樹外時,使用反編譯與自定義架構映射器。
根據類別添加 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 時,將該類型的 schema 以自定義映射處理。可用於項目中 JSON 序列化形式與 OpenAPI schema 不同的數字·日期包裝器。
sourceClasspath
當符號求解器無法找到外部來源或編譯類別時,使用 addSourceClasspath 和 sourceClasspath。僅僅存在導入並不意味著解析器能夠解釋所有泛型類型。