Pemecahan Masalah

Memeriksa urutan pengaturan dan bentuk kode dukungan saat file yang dihasilkan tidak ada atau route/type hilang.


Urutan verifikasi

• Memastikan @Profile("local") termasuk dalam profil eksekusi yang sebenarnya.

• Memastikan tidak ada pengecualian yang terjadi pada console lokal saat runner.start().

• Memastikan rootPath, routerPackage, entityPackage, handlerOutputDir berada di lokasi yang benar setelah konversi dot/slash.

• Memastikan direktori sumber yang dihasilkan termasuk dalam set sumber IDE dan alat build.

• Tipe modul umum eksternal harus ditambahkan ke decompile jar class atau classpath sumber.

• Memastikan RouterFunction dalam bentuk rute/nest fluent yang didukung dan referensi metode handler.

Jalur titik dan jalur garis miring

Config menormalkan . menjadi / dalam beberapa input path. Meskipun string paket dan path filesystem dapat dicampur, perlu memeriksa perbedaan antara pengaturan yang memasukkan seluruh output path seperti src.main.java.com.example... dan pengaturan yang hanya memasukkan paket com.example....

Mereproduksi konfigurasi path

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/

Jalankan dari root proyek dan pastikan routerDir yang dicetak berisi kode sumber router. Menyertakan src/main/java dalam routerPackage membuat path berulang. Berikan konfigurasi ini ke handlerConfig milik runner, lalu jalankan dengan profil local dari Quick Start. handlerPackage adalah nama paket Java; handlerOutputDir adalah direktori keluaran yang sebenarnya.

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

Jika path benar tetapi keluaran tidak ada, periksa exception pertama dari runner.start(). Reproduksi dengan satu rute minimal yang memakai referensi handler::method, periksa file hasilnya, lalu tambahkan rute yang ada. Keberadaan swagger.json saja belum cukup: bandingkan path permintaan dan metode HTTP di paths dengan kontrak respons yang sebenarnya.

Rekonstruksi tak terbatas

Swagger writer hanya menulis file saat konten berubah. Jika regenerasi berulang terjadi, periksa apakah file output termasuk dalam watchDirectory, dan apakah formatter atau watcher lain terus mengubah sumber yang dihasilkan.

Batasan analisis statis

© 2026 Byeolnaerim. Semua hak dilindungi.PengenalanKebijakan Penanganan Data Pribadi