Vraag Tips of hulpmiddelen voor het debuggen van veertoepassingen? [Gesloten]


Ik probeer Spring de eerste keer in een applicatie te gebruiken. Het algemene probleem dat herhaaldelijk naar voren komt, is hoe u Spring kunt debuggen. Het framework is zwaar van configuratie, dus traditionele foutopsporing in de codering lijkt vruchteloos. Ik heb geen echt idee hoe ik het probleem moet oplossen door de logboeken voor foutopsporingsniveaus (die ontbreken) en door te scannen, in te schakelen.

Zijn er algemene tips of hulpmiddelen om foutopsporing in de lente te helpen?


15
2018-05-20 13:47


oorsprong


antwoorden:


Als je Eclipse gebruikt, pak dan de Spring IDE (verkrijgbaar bij Eclipse Marketplace in het Help-menu van Eclipse). Dit zorgt voor codevermelding, bean-visualisatie en hot-linking naar uw configuratiebestanden.


6
2018-05-20 19:06



Ik denk niet dat Spring debugging anders moet zijn dan enig ander foutopsporingsscenario.

Welke aspecten van de lente gebruik je? Als u afhankelijkheidsinjectie op de juiste manier gebruikt, zou ik geen problemen verwachten.

Maar als je bonen dynamisch oplost via hun naam (tijdens runtime, gebruik dan ApplicationContext.getBean()) dan kan ik zien dat dit u problemen zal veroorzaken, anticiperend op de stroom van controle enz., en zou u voorstellen dat u uw IoC opnieuw bezoekt.

EDIT: Het is best handig om de Spring-broncode beschikbaar te hebben. Het is goed samengesteld en redelijk leesbaar, en daarom mogelijk van nut bij het opsporen van fouten.


3
2018-05-20 14:05



Ik gebruik de Java Debugger in het algemeen gewoon in eclipse - het werkt prima in de meeste klassen. Sommige klassen zijn verpakt bij compileren / runtime door bytecode-wijzigingen - hiervoor kunt u over het algemeen geen onderbrekingspunten in methoden plaatsen, maar u kunt wel een onderbrekingspunt instellen bij methode-invoer.

Als je een heel specifieke situatie hebt, moet je misschien wat uitleggen in je vraag.

Ik ben over het algemeen ook ok met de logging-niveaus - wat denk je dat er mis is met hen?


0
2018-05-20 13:52



Met ingang van 09/2011 (Versie: 2.6.1.RELEASE, Build-ID: 201105041000) is een echte ergernis het feit dat de debugger niet stopt binnen in de sluitingen, dus je moet onthouden om een ​​breekpunt in te voegen binnen degenen die je wilt onderzoeken; dat is prima, want het gaat "bijna" naar een andere klas, wat vaak niet uitmaakt, maar als dat zo is, moet je dat onthouden.


0
2017-09-13 16:13