Debugging
Debugging is een essentieel onderdeel van Java-ontwikkeling, dat ontwikkelaars helpt om problemen efficiënt te identificeren en op te lossen. Deze gids legt uit hoe je debugging in webforJ configureert voor Visual Studio Code, IntelliJ IDEA en Eclipse.
- Visual Studio Code
- IntelliJ IDEA
- Eclipse
- Open je webforJ-project in VS Code.
- Druk op Ctrl + Shift + D (of Cmd + Shift + D op Mac) om het Run and Debug-paneel te openen.
- Klik op "create a launch.json file"
- Selecteer Java als de omgeving.
- Wijzig
launch.jsonom het volgende aan te passen:
{
"version": "0.2.0",
"configurations": [
{
"type": "java",
"name": "Attach to Jetty",
"request": "attach",
"hostName": "localhost",
"port": 8000
}
]
}
- Sla het bestand op en klik op Start Debugging.
- Open je project in IntelliJ IDEA.
- Navigeer naar Run → Edit Configurations.
- Klik op de + knop en selecteer Remote JVM Debug.
- Stel de host in op
localhosten de poort op8000. - Sla de configuratie op en klik op Debug om aan de draaiende app te verbinden.
- Open je project in Eclipse.
- Ga naar Run → Edit Configurations.
- Selecteer Remote Java Application.
- Klik op New Configuration en stel in:
- Host:
localhost - Poort:
8000
- Host:
- Sla op en start de debugger.
Running the debugger
Zodra je je IDE hebt geconfigureerd:
- Start je webforJ-app met de bijbehorende opdracht:
- Voor Jetty, gebruik
mvnDebug jetty:run - Voor Spring Boot, gebruik
mvnDebug spring-boot:run
- Voor Jetty, gebruik
- Voer de debugconfiguratie uit in je IDE.
- Zet breakpoints en begin met debuggen.
- Zorg ervoor dat poort 8000 beschikbaar is en niet geblokkeerd wordt door een firewall.
- Als je een van de webforJ-archetypes gebruikt en het poortnummer in het pom.xml-bestand hebt gewijzigd, zorg er dan voor dat de poort die voor debugging wordt gebruikt overeenkomt met de bijgewerkte waarde.
Inspecting the running app
Een debugger toont je wat je code doet. craftforJ toont je de app die door de code is geproduceerd, inclusief de componentenboom die webforJ heeft gebouwd, de eigenschappen die elke component heeft, welke route actief is en wie er toegang toe heeft. Je kunt een eigenschap veranderen, het resultaat in de draaiende app zien en die wijziging terugschrijven naar de Java waar het vandaan kwam.
craftforJ wordt geleverd met webforJ en gebruikt dezelfde debugmodus die je al hebt ingeschakeld, plus één extra eigenschap:
webforj.debug = true
webforj.devtools.craftforj.enabled = true