Mitä Java-build sisältää?


Julkaistu:

Päivitetty:


Artikkelit › Mitä Java-build sisältää?

Tilanne vuonna 2026 ja turvallinen käyttö

Johtopäätös: Java-build muuttaa lähdekoodin ja resurssit testatuksi, ajettavaksi tai käyttöönotettavaksi artefaktiksi. Kääntäminen on vain yksi vaihe; riippuvuuksien ratkaisu, testaus, pakkaaminen, tarkistus ja julkaisu ovat erillisiä vaiheita, joita build-työkalu voi koordinoida.

Mitä opit

  • Ero .java-tiedoston kääntämisen ja täydellisen sovellusartefaktin tuottamisen välillä.
  • Miten luokkapolut, testit, JARit, WARit, Maven ja Gradle sopivat yhteen.
  • Mitkä alkuperäisen selityksen osat ovat pikemminkin käsitteellisiä kuin nykyisen koontireseptin.

Kenelle artikkeli on tarkoitettu: Aloittelijoille, jotka kohtaavat termit build, compile ja package ja haluavat ymmärtää niiden erot.

Tilanne vuonna 2026: Peruskäsitteet ovat ennallaan. Käytä toistettavaa buildia ja tuettua JDK:ta, määritä lisäosien versiot yksiselitteisesti ja suorita testit CI:ssä sen sijaan, että luottaisit vain IDE:n buildiin.

Turvallisuushuomautus: Alkuperäisen artikkelin komentoja ja määritysesimerkkejä ei ole suoritettu uudelleen nykyaikaisessa tuotantoympäristössä. Tarkista tuetut versiot, ota varmuuskopio ja valmistele palautus erillisessä testiympäristössä ennen käyttöönottoa.

Viralliset lähteet

Yleiskuvaus

Javassa kääntäminen ja build eivät tarkoita samaa asiaa. Kääntäminen muuntaa lähdekoodin bytecodeksi, kun taas build käsittelee lisäksi riippuvuudet, testit, resurssit ja paketoinnin.

Sisällysluettelo

  1. Mitä Java-build sisältää?
  2. Yhteenveto

1. Mitä Java-build sisältää?

Java-build valmistelee lähdekoodin ja resurssit suoritusta tai deploymentia varten. Seuraava lyhyt esimerkki on lähdekooditiedosto, joka on ensin käännettävä.

HelloWorld.java


public class HelloWorld{
   public static void main(String[] args){
     System.out.println("Hello World!!");
   }
}

HelloWorld.java on kehittäjän muokkaama tiedosto. javac-kääntäjä muuntaa sen JVM:n bytecodea sisältäväksi HelloWorld.class-tiedostoksi. Jos lähdekoodia muutetaan kääntämättä sitä uudelleen, sovellus käyttää edelleen vanhaa class-tiedostoa.

Kääntäminen on vain yksi buildin osa. Tavallinen projekti sisältää myös riippuvuudet, testit, resurssit, tarkistukset ja paketoinnin JAR- tai WAR-tiedostoksi.

1-1. Miksi build tarvitaan?

Toistettava build suorittaa samat vaiheet samoilla työkaluversioilla. Tulos ei siten riipu IDE:ssä tehdyistä manuaalisista toimista, ja se voidaan varmistaa CI:ssä.

1-2. Kääntäminen ja build

Kääntäminen muuntaa .java-tiedostot .class-tiedostoiksi. Buildin tehtäväkenttä on laajempi:

  • ratkaisee riippuvuudet ja valmistelee classpathin;
  • kääntää sovellus- ja testikoodin sekä suorittaa testit;
  • käsittelee resurssit ja luo jaeltavan artefaktin, esimerkiksi JAR- tai WAR-tiedoston.

3. Yhteenveto

  • javac kääntää lähdekoodin bytecodeksi .class-tiedostoihin.
  • Build sisältää muutakin kuin kääntämisen: riippuvuudet, testit, resurssit ja paketoinnin.
  • Mavenin ja Gradlen kaltaiset työkalut tekevät tuloksesta toistettavan eri ympäristöissä.

Tässä ovat tärkeimmät huomioitavat vaiheet ja rajoitukset.