Uvod

Ciljna grupa : Programeri koji želju da se uđu u kreiranje Gradle pluginova.

Za efikasno razvoj Gradle pluginova, neophodno je dobro podešeno razvojno okruženje. Dobro podešavanje vam će uštedeti vreme, smanjiti frustracije i osigurati konzistentnost vaših buildova.

Ovaj vodič se koncentruje na četiri bitna stupa :
  1. Le JDK(Java Development Kit), jer Gradle i JBake pokreću se na JVM.

  2. Un IDEmoderno (IntelliJ IDEA) sa dobrom podrškom za Kotlin i Gradle.

  3. Gradlesebe, da inicijalizuje projekte.

  4. JBake, motor našeg statičkog sajta.

Komponenti razvojnog okruženja
@startuml
!theme plain
node "Машина програмера" {
  component "JDK (JVM)" as JDK
  component "IntelliJ IDEA" as IDE
  component "Gradle (globalni)" as Gradle
  component "JBake (globalno)" as JBake

  IDE --> JDK : utilise
  Gradle --> JDK : utilise
  JBake --> JDK : utilise
}
@enduml

1. JDK : Pokretač Gradle

Gradle je aplikacija koja se izvršava na Java Virtual Machine (JVM). Zato, instalacija JDK-a je apsolutni preduslov.

Koja verzija da se izabere?

Preporučuje se da se koristi verzija LTS (Long-Term Support) Jave. Тренутно,JDK 17 ou JDK 21су отлични избори.

Instalacija preko SDKMAN! (Preporučeno)

SDKMAN! je odličan alat za upravljanje verzijama mnogih SDK-a, uključujući Java i Gradle.

Instaliraj SDKMAN!

curl -s "https://get.sdkman.io" | bash source "$HOME/.sdkman/bin/sdkman-init.sh"

Instalirati verziju JDK

# Pour lister les versions de Java disponibles sdk list java

# Pour installer Java 17 (par exemple, la distribution Temurin)
sdk install java 17.0.8-tem

Провери инсталацију

java -version

Trebalo bi da vidite verziju koju ste upravo instalirali da se prikaže.

2. IDE : IntelliJ IDEA

Za razvoj Gradle dodataka sa Kotlin DSL-om,IntelliJ IDEAje alat izbora. Njegova integracija sa Gradle i Kotlinom je nepoređena.

  • Издање за заједницу :Besplatna i dovoljna za početak.

  • Ultimate Edition :Плаћена, нуди напредне функционалности за веб развој и базе података.

Преузмите верзију која вам одговара са сајта JetBrains: https://www.jetbrains.com/idea/download/

IDE će automatski detektovati vaše fajlove.build.gradle.kts et settings.gradle.kts, nudeći vam snažnu autodopunu, navigaciju kroz kod i integrirane alate za debugiranje.

3. Gradle : alat za izgradnju

Čak i ako će svaki projekat koristiti svoju verziju Gradle kroz Gradle Wrapper, korisno je imati globalnu instalaciju Gradle za zadatke kao što je inicijalizacija novih projekata (gradle init).

Instalacija putem SDKMAN!

Slično kao i za JDK, SDKMAN! pojednostavljuje instalaciju Gradle.

Instaliraj Gradle

sdk install gradle

Проверити инсталацију

gradle -v

Ова команда ће приказати верзије Gradle, Kotlin, Groovy и JDK-a које се користе.

4. JBake : Generator statičkog sajta

JBake je alat koji ćemo koristiti da pretvorimo naše izvorne fajlove (kao ovaj) u statički web sajt. Imati lokalnu instalaciju je praktično za pregled promena.

Instalacija putem SDKMAN!

Kao i za ostale alate, SDKMAN! je najjednostavnija metoda.

Instaliraj JBake

sdk install jbake

Proveriti instalaciju

jbake -v

Ova komanda će prikazati verziju JBake i informacije o Java okruženju koje koristi.

5. Gradle Wrapper: Najbolja praksa

Kada vaš projekat bude kreiran (što ćemo videti u sledećem članku), ne bi trebalo da više koristite globalnu komandu.gradle. Umesto toga, ćete ga koristitiGradle omotač(./gradlew), jedna skripta uključena u vašem projektu.

Zašto ?

  • Репродуктивност :Ovaj Wrapper garantuje da svako lice koje radi na projektu (uključujući vaš CI/CD server) koristi tačnoista verzija Gradle, tako uklanjajući greške u izgradnji zbog različitih okruženja.

  • Jednostavnost :Нема потребе да ручно инсталирате Gradle за да допринесете пројекту.

Dovoljno je klonirati repozitorijum i pokrenuti`./gradlew`.

Tipična komanda će izgledati ovako:

# Ne pas faire : gradle build
# À faire :
./gradlew build

6. Docker i Portainer: Za ponavljive gradnje (opciono)

Iako nisu strogo neophodni za pisanje plugina, Docker i Portainer su moderni DevOps alati koji olakšavaju kreiranje reproduktivnih buildova i upravljanje vašim okruženjem.

Instalacija Docker Engine

Docker vam omogućava da pakujete vašu aplikaciju i njene zavisnosti u kontejneru.

Instalirajte Docker putem zvaničnog skripta :

curl -fsSL https://get.docker.com -o get-docker.sh sudo sh get-docker.sh

Upravljanje Docker-om bez sudo (preporučeno) :

Додајте вашог корисника у групу.docker.

sudo usod -aG docker $USER
docker run hello-world

Управљање Docker-ом користијући Portainer (GUI)

Portainer je lagani web interfejs za upravljanje vašim Docker kontejnerima.

Kreirati volumen za podatke Portainer :

docker volume create portainer_data

Pokreni Portainer kontejner :

docker run -d -p 8000:8000 -p 9443:9443 --name portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce:latest

Vi sada možete da pristupite interfejsu Portainer-a na`https://localhost:9443`.

Zaključak

Vaše okruženje je sada spremno! Imate JDK, najprikladniji IDE, Gradle i JBake. Sa dodavanjem Dockera, ste takođe spremni da kreirate kontejnerizovane i reproducibili gradnje. Ova čvrsta osnova vam će omogućiti da se fokusirate na ono što je važno: razvoj jakih i korisnih dodataka.

У следећем чланку, ћемо користити команду`gradle init`da generišemo strukturu našeg prvog projekta dodatka

Повезани чланци