Externe JAR & Typzuordnung
Verwendet Decompilierung und benutzerdefinierte Schema-Mapping, wenn die gemeinsamen Modul-Handler/DTOs außerhalb des Quellbaums liegen.
Jar nach Klassenkriterien hinzufügen
var swaggerConfig = SwaggerJsonFileWatcher.Config.builder()
.addDecompileJarClass(com.example.common.web.handler.ApiUploadHandler.class)
.build();Sucht den Jar-Standort im Code der angegebenen Klasse und dekompiliert ihn mit CFR, um den Analysebereich für Route/Handler/Typ zu erweitern. Es wird auch addDecompileJar angeboten, um den Jar-Pfad direkt hinzuzufügen.
custom type schema
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();Wenn der Prädikat true zurückgibt, wird das Schema des entsprechenden Typs mit benutzerdefinierter Zuordnung verarbeitet. Dies kann in Projekten verwendet werden, in denen die JSON-Serialisierungsform und das OpenAPI-Schema sich in Zahlen- und Datums-Wrappern unterscheiden.
sourceClasspath
Der Symbol-Löser verwendet addSourceClasspath und sourceClasspath, wenn er externe Quellen oder kompilierte Klassen nicht finden kann. Nur weil ein Import vorhanden ist, kann der Parser nicht alle generischen Typen interpretieren.