You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 6 Next »

Debuggeren er et verktøy som brukes til å analysere kjørende kode.

Den kommer med et eget perspektiv, som du vinner ved å velge "Debug" øverst i høyre hjørne av skjermen. Dersom dette valget ikke vises, kan du trykke på den lille hvite knappen med et pluss-tegn like ved, velge Debug fra listen og trykke OK. For å komme tilbake til det gamle perspektivet velger du "Java" fra samme sted. 

 

Breakpoints

Når du debugger kode har du muligheten til å stoppe midt i et kjørende program. Da må du fortelle Eclipse hvor du ønsker at programmet skal stoppe. Dette gjøres ved å markere koden med et breakpoint. Du kan sette inn et punkt ved å dobbeltklikke i margen til venstre for den linjen du befinner deg på - da dukker det opp en liten blå sirkel. Legg også merke til at du kan velge "Breakpoints" oppe til høyre. Her får du opp en liste over alle punkter du har lagt til. 

Når du legger inn breakpoints vil Eclipse stoppe rett før linjen med breakpointet kjøres. Dersom du starter å debugge programmet i eksempelet over vil du derfor ikke få vite verdien av isEven, siden den ikke finnes før linjen har kjørt. Du vil derimot få vite verdien av isOdd siden denne nettopp har blitt evaluert. Ved å velge "Variables" oppe til høyre på skjermen får du en oversikt over alle variabler som finnes i programmet, samt verdien de har. Dersom du bare vil vite verdien på en enkelt variabel kan du holde musepekeren over den i kodevinduet.

For at Eclipse skal ta hensyn til breakpointene må du kjøre koden i debuggingsmodus. Denne finner du rett ved siden av knappen for "kjør". Se figuren under. 

Nå er du i gang og programmet vil, som nevnt over, stoppe før det første breakpointet det finner.

Navigere i et stoppet program

Når et program har stoppet ved et breakpoint har du ulike måter å fortsette på. De to store mulighetene er å fortsette eller å steppe gjennom koden. Å fortsette betyr at man kjører koden til neste breakpoint, mens å steppe betyr at man kjører kodelinjene på kommando fra brukeren. De viktigste knappene for å navigere i et stoppet program er vist på figuren nedenfor. 

En forklaring på de ulike knappene, fra venstre mot høyre, er gitt nedenfor. De du kommer til å bruke desidert mest er notert med fet skrift.

  • Resume: Koden kjøres frem til neste breakpoint
  • Suspend: Brukes for å avslutte tråder (ikke pensum)
  • Terminate: Avslutter kjøringen
  • Disconnect: Brukes hvis du degbugger et program som ikke er på din lokale maskin (ikke pensum)
  • Step into: En del av steppe-funksjonen. Går inn i neste blokk med kode. Dersom det er et metodekall på neste linje som skal utføres, vil Step into ta deg inn i denne slik at du kan fortsette debuggingen der. 
  • Step over: Tar deg til neste kodelinje i den filen du er i nå. Dersom du har et metodekall på linjen vil du altså ikke gå inn i denne metoden. 
  • Step return: Dersom du har brukt Step into for å komme inn i en metode vil Step return ta deg ut igjen. 
  • Drop to frame: Eclipse har støtte for å "gå bakover". (???)
  • Use Step Filters: Debuggeren har støtte for å filtrere ut klasser man ikke ønsker å debugge. Denne funksjonen tvinger alle step-knapper til å bruke disse filtrene.

 

Se også:

 

  • No labels