Fehlerbehebung

Überprüft der Reihe nach die Einstellungen und den unterstützenden Code, wenn keine erstellte Datei vorhanden ist oder Route/Typ fehlt.


Überprüfungsreihenfolge

• Überprüfen Sie, ob @Profile("local") im tatsächlich ausgeführten Profil enthalten ist.

• Überprüfen Sie, ob beim Aufruf von runner.start() keine Ausnahme in der lokalen Konsole aufgetreten ist.

• Überprüfen Sie, ob rootPath, routerPackage, entityPackage, handlerOutputDir nach der Dot/Slash-Umwandlung an der richtigen Stelle sind.

• Überprüfen Sie, ob das Quellverzeichnis für die Generierung im IDE- und Build-Tool-Quellensatz enthalten ist.

• Fügen Sie den Typ des externen gemeinsamen Moduls zum Decompile-JAR-Klassen oder zum Quellclasspath hinzu.

• Überprüfen Sie, ob die RouterFunction in der unterstützten Form von fließenden Routen/Nest und Handler-Methodenreferenzen vorliegt.

Punktpfad und Schrägstrichpfad

Die Konfiguration normalisiert . zu / bei mehreren Pfadeingaben. Es ist möglich, Paketzeichenfolgen und Dateisystempfade zu mischen, aber Sie müssen den Unterschied zwischen einer Konfiguration, die den gesamten Ausgabepfad wie src.main.java.com.example... angibt, und einer, die nur das Paket com.example... angibt, beachten.

Pfadkonfiguration reproduzieren

java
import com.byeolnaerim.watch.route.HandlerGenerator;

var handlerConfig = HandlerGenerator.Config.builder()
    .rootPath("src/main/java")
    .routerPackage("com.example.web.router")
    .handlerPackage("com.example.web.handler")
    .handlerOutputDir("src/main/java/com/example/web/handler")
    .build();

System.out.println(handlerConfig.routerDir());
// src/main/java/com/example/web/router/

Führen Sie den Code im Projektstamm aus und prüfen Sie, ob das ausgegebene routerDir die Router-Quelldateien enthält. src/main/java in routerPackage führt zu einem doppelten Pfad. Übergeben Sie die Konfiguration an handlerConfig des Runners und verwenden Sie das local-Profil aus Quick Start. handlerPackage ist der Java-Paketname; handlerOutputDir ist das tatsächliche Ausgabeverzeichnis.

bash
test -d src/main/java/com/example/web/router
find src/main/java/com/example/web/handler -name '*.java'
# Quick Start swaggerOutputFile:
test -s src/main/resources/static/swagger.json

Sind die Pfade korrekt, aber fehlt die Ausgabe, prüfen Sie zuerst die erste Ausnahme aus runner.start(). Reproduzieren Sie das Problem mit einer minimalen Route und einer handler::method-Referenz, prüfen Sie die erzeugten Dateien und ergänzen Sie dann die vorhandenen Routen. Eine vorhandene swagger.json allein genügt nicht: Vergleichen Sie Anfragepfad und HTTP-Methode in paths mit dem tatsächlichen Antwortvertrag.

Unendliche Neuerstellung

Der Swagger-Schreiber schreibt die Datei nur, wenn sich der Inhalt ändert. Wenn dennoch wiederholte Generierungen auftreten, überprüfen Sie, ob die Ausgabedatei im watchDirectory enthalten ist und ob ein Formatter oder ein anderer Watcher die generierte Quelle weiterhin ändert.

Grenzen der statischen Analyse

© 2026 Byeolnaerim. Alle Rechte vorbehalten.EinführungDatenschutzrichtlinie