Eclim on Eclipseen pohjautuva vi:n alla pyörivä IDE. Kokeillaan sitä Javaan. Asennus on helppoa; siitä jossain muualla.
Projektin luonti
Tehdään ohjelma, mikä kirjoittaa “Hello World”:n yhdellä tiedostolla. Vi(m) käyntiin ja käskyä kehiin
1 | :ProjectCreate /user/markku/Java/HelloWorld -n java |
Eclim tekee polun (/user/markku/Java/HelloWorld), jos sitä ei ollut olemassa.
Projektin juureen tuli .project -tiedosto, jossa on xml-muodossa projektin tietoja. Java-optio generoi myös .classpath-tiedoston, joka sisältää tiedostot ja kirjastot.
Tiedostojen tuominen
Ohjelmointiprojektin tiedostot pitää ilmoittaa Eclim:lle, jotta se osaa käyttää niitä. Ne ovat .classpath-tiedostossa. Siis avataan se
1 | :e /home/markku/Java/.classpath |
Polku voi olla suhteellinen; pelkkä
1 | :e .classpath |
voi toimia. HelloWorld-ohjelman tiedostot tallennetaan hakemistoon nimeltä src/java, joten lisätään se .classpath-tiedostoon:
1 | :NewSrcEntry src/java |
jolloin tiedosto näyttää tältä:
1 2 3 4 5 6 | <?xml version="1.0" encoding="UTF-8"?> <classpath> <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/> <classpathentry kind="output" path="bin"/> <classpathentry kind="src" path="src/java"/> </classpath> |
Java-koodin lisääminen
Koodi laitetaan hakemistoon src/java ja nimien kanssa pitää olla tarkkana. Jos tehdään luokka HelloWorld, niin tiedoston nimen pitää olla sama, HelloWorld.java. Vi:llä siis tiedosto auki (se kannattaa avata terminaalissa)
1 | mkdir -p /home/markku/Java/HelloWorld/src/java |
ja
1 | vim src/java/HelloWorld.java |
Siihen dumpataan
1 2 3 4 5 6 7 | public class HelloWorld { public static void main(String[] Args) { System.out.println("Hello World"); } } |
Käskyllä
1 | :Java |
Eclim kääntää koko roskan ja näyttää vielä ulostulonkin. Toiminee. Lopussa löytämiäni ongelmia ja ratkaisuja.
Eclim-täydennys
Kuten Eclipse, Eclim osaa täydentää ja näyttää virheet jne. Tässä esimerkki. Jos koodissa lukeekin vain System., niin Eclim antaa controll-X ja controll-U painelemalla
1 2 3 4 5 6 7 | System.<ctrl-x><ctrl-u> // Täydennysmoodi System.<ctrl-n> // Seuraava System.out // Valittu System.out.p<ctrl-x><ctrl-u> // Täydennys uudestaan System.out.p<ctrl-n> // Painele <ctrl-n> System.out.println( System.out.println("Hello World"); // kirjoita loppuun. |
Virheilmoja
- Yksi virhe tuli, kun .classpath-tiedostossa oli yksi kind=”src”-rivi liikaa.
- packages. . Ei löydy world.HelloWorld -main classia.