Java kasutamine käsurealt ning Eclipse keskkonnas


Selle harjutustunni eesmärk on saada tööle loengumaterjalides leiduv näiteprogramm ning  teha esmatutvust Eclipse keskkonnaga.
Abimaterjaliks sobib Suni tutorial (inglise keeles).

Programmiks olgu ruutvõrrandi lahendamise näide, millega käib lisana kaasas klass nimega TextIO (selle lähtetekst on TextIO.java).
  1. Tehke endale eraldi kataloog (kaust) Java-programmide jaoks (vt. käsk mkdir)
  2. Muutke see kataloog jooksvaks kataloogiks (vt. käsk cd)
  3. Laadige programmi lähtetekst Ruutvorrand.java ning lisafail  TextIO.java sellesse kataloogi. Kontrollige, et nad tõesti seal olemas on.
  4. Kontrollige, kas Java on kättesaadav, tippides käsureale:
java  -version
  1. Kui tekkis mingi probleem, pöörduge juhendaja poole, normaalsel juhul saite teada Java versiooninumbri.
  2. Kompileerige näiteprogramm, tippides käsureale:
javac  Ruutvorrand.java
  1. Kui ilmusid veateated, siis pöörduge juhendaja poole, normaalsel juhul tekkis jooksvasse kataloogi juurde fail nimega Ruutvorrand.class (kontrollige seda!).
  2. Oletegi eesmärgile lähedal - käivitage näiteprogramm, tippides käsureale:
java  Ruutvorrand
  1. Proovige käivitamist mitmeid kordi erinevate algandmetega, ka vigastega.
  2. Muutke programmi teksti, lisades enne andmete sisestust rea tervituse genereerimiseks (pange sellesse teksti Hea Tudengi asemele enda nimi):
TextIO.putln ("Tere, Hea Tudeng!");
  1.  Kompileerige muudetud programm uuesti. Kui tegite mingi näpuka, siis parandage see.
  2.  Käivitage uus versioon ja näidake tulemust juhendajale.


Eclipse IDE (Integrated Development Environment)

Eclipse saab laadida www.eclipse.org).

Eclipse on vabavaraline IDE, mis töötab erinevatel platvormidel (Linux, Windows, Solaris, ...) ning erinevate programmerimiskeelte (Java, C++, PHP, ...) ja muude projektide (UML, ...) toetamiseks.  Meie piirdume Java projektidega.

Esmalt huvitab meid lähtetekstide toimetamine, seejärel programmi süntaktiline silumine ja käivitamine. Sisulise silumise juures on abiks nn. katkestuspunktide panemine programmi, et jälgida näiteks muutujate väärtusi neis punktides. Erinevalt nii mõnestki teisest IDEst saab Eclipse puhul vaadata andmestruktuuride sisse, samuti ei pea vaadeldavaid muutujaid eelnevalt deklareerima - näha saab kõike.

Eclipse kasutab andmete hoidmiseks oma töökataloogi (workspace), millesse kasutajal peab olema õigus kirjutada. Igale projektile on ette nähtud oma alamkataloog selles töökataloogis. Projekt võib koosneda erinevat tüüpi ressurssidest - lähtetekstid, binaarfailid, dokumentatsioon jne. Vajadusel saab väliseid faile projekti juurde importida.

Proovime mõne näite käima saada Eclipse keskkonnas.
  1. Käivitage Eclipse
  2. Kui küsitakse töökataloogi asukohta, siis määrake see enda kodukataloogi alla (või mujale, kuhu teil on kirjutamise õigus, näit. arvutiklassis töötades võrgukettale)
  3. Sulgege tervitusaknad jms. kui te just ei taha neid lugema hakata
  4. Valige menüüst Window -> Open Perspective -> Java
  5. Looge uus Java-projekt: File -> New  -> Project... -> Java Project
  6. Pange sellele projektile mingi nimi
  7. Valige see projekt  "Packet Explorer" aknas fookusesse ning parema hiirenupu alt leiate menüü projektiga opereerimiseks
  8. Looge uus klass: New -> Class ja pange klassile mingi nimi (Java klasside nimed algavad suurtähega!). Uue klassi loomise aknas jätke lahter "Package:" tühjaks (kui te veel ei oska pakettidega töötada), "Modifiers:" olgu ainult "public", "Superclass:" olgu java.lang.Object ja meetoditest laseme genereerida main-meetodi
  9. Toimetiaknasse tekib Java lähteteksti toorik (see, mida genereeritakse, on seadistatav - te saate hiljem kõike muuta enda vajaduste järgi)
  10. Kirjutage main-meetodi sisse tervitus (asendage jälle nimi) ning salvestage see muutus:
System.out.println ("Tere, Hea Tudeng!");
  1.  Käivitage programm: Run -> Run As -> Java Application
  2. Tulemus ilmub konsooliaknasse (klikake "Console"-sakki, kui vaja)
  3. Kui soovite ruutvõrrandite näidet, siis looge uus projekt ja importige  (Import... -> General -> File system -> ... ) sinna failid  Ruutvorrand.java ning TextIO.java (mõlemad on lähtetekstid, peate ka TextIO.java alla laadima!)
  4. Valige "Package Explorer" aknas  fookusse Ruutvorrand.java (leiate selle default-paketist) ning käivitage see parema hiirenupu abil:  Run -> Run As -> Java Application
  5. Dialoogi kordajate sisestamiseks saate pidada konsooliaknas
  6. Näidake saavutusi juhendajale.



Proovige nüüd  katkestuspunktide seadmist ja muutujate jälgimist.
  1. Programmi teksti toimetamisel on kasulik sisse lülitada reanumbrid: kui kursor on toimetiakna vasakul serval, siis saab parema hiirenupu alt vajaliku menüü. Saab ka tavamenüüde kaudu: Window -> Preferences -> General -> Editors -> Text editors -> Show line numbers (teha linnuke)
  2. Katkestuspunkti seadmiseks minge toimetiakna vasakusse serva (või reanumbrite veerule), viige kursor teid huvitava rea kohale programmis ja valige parema hiirenupu alt "Toggle Breakpoint". Kui asi õnnestub, siis ilmub aknaservale sinine mummuke, mis tähistab katkestuspunkti
  3. Programm tuleb nüüd käivitada silumisvaates: Run -> Debug As -> Java Application (kui sellist valikut ei saa teha, siis tuleb korraks  lülituda Java vaatele: Window -> Open perspective -> Java. Kui ikkagi ei õnnestu Java rakendusena käivitada, siis on teil tõenäoliselt projekti tüüp vale)
  4. Aknas "Variables" on näha kõigi parasjagu nähtavate muutujate väärtused
  5. Run-menüü all on programmi jätkamise ja peatamise käsud, ka vastavad nupud on olemas.
  6. Run-menüü all "Step Over" (F6) lubab programmi täita samm-sammult (ilma alammeetodite sisusse laskumata).
Et muutujaid vaadata, peab mõni muutuja olemas olema vastavas katkestuspunktis!

Kodus oleks hea vaadata ka M. Kalmo loodud õpiobjekti: http://enos.itcollege.ee/~mkalmo/eclipse/

Jaanus Pöial