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.class 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 Juhan Juurika asemele enda nimi):
TextIO.putln ("Tere, Juhan Juurikas!");
  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)

See tund tuleb ette võtta neil, kelle jaoks eelnevas osas probleeme ei tekkinud. Kui tunnete, et miski jäi arusaamatuks, siis proovige veel mõnda näidet käsurealt ja tulge Eclipse juurde kunagi hiljem tagasi (või proovige seda kodus: Eclipse saab laadida www.eclipse.org).

Eclipse on vabavaraline IDE, mis töötab erinevatel platvormidel (Linux, Windows, Solaris, ...) ning erinevate programmerimiskeelte (Java, C++, C, COBOL, ...) 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 (mugavuse mõttes võiks edaspidiseks  luua vastava ikooni oma töölauale, kui seda veel ei ole)
  2. Kui küsitakse töökataloogi asukohta, siis määrake see enda kodukataloogi alla (või mujale, kuhu teil on kirjutamise õigus)
  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, lubades projektikaust luua töökataloogi
  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, "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, Juhan Juurikas!");
  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... -> 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 ning käivitage see:  Run -> Run As -> Java Application
  5. Dialoogi kordajate sisestamiseks saate pidada konsooliaknas
  6. Näidake saavutusi juhendajale.



Kellel veel aega on, võiks proovida katkestuspunktide seadmist ja muutujate jälgimist.
  1. Programmi teksti toimetamisel on kasulik sisse lülitada reanumbrid: Window -> Preferences -> Java -> Editor -> Show line numbers
  2. Katkestuspunkti seadmiseks minge programmi teksti akna 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
  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.
Et muutujaid vaadata, peab mõni muutuja olemas olema vastavas katkestuspunktis!


Jaanus Pöial, 2005