Jenkins ve Maven ile Otomatik WAR/JAR Dosyası Oluşturma

İngilizce'ye Geç

Jenkins ve Maven ile Otomatik WAR/JAR Dosyası Oluşturma (Adım Adım CI/CD)

Kısa Özet: Jenkins ile Maven Build Nasıl Yapılır?

Jenkins kullanarak otomatik bir WAR veya JAR dosyası oluşturmak için; 1) Jenkins'e Maven Integration ve Git eklentileri kurulur. 2) Global Tool Configuration kısmından JDK, Git ve Maven yolları (path) tanımlanır. 3) Yeni bir "Maven Project" oluşturulup kaynak kodun bulunduğu Git Repository (Örn: GitHub/GitLab) URL'si girilir. 4) Build kısmında Goals and options alanına clean package yazılarak proje derlenir (build edilir) ve target klasörü altında dağıtıma hazır WAR/JAR dosyası otomatik olarak elde edilir.

Modern yazılım geliştirme süreçlerinde, kodun manuel olarak derlenip sunucuya atılması büyük zaman kayıplarına ve insan hatalarına yol açar. Sürekli Entegrasyon ve Sürekli Dağıtım (CI/CD) süreçlerinin kalbi olan Jenkins, kodunuzu uzak depodan çeker, Maven ile derler ve canlı ortama aktarır. Bu rehberde, bir Java projesinin Jenkins, Git ve Maven üçlüsü kullanılarak nasıl otomatik olarak .war veya .jar dosyasına dönüştürüleceğini adım adım öğreneceğiz.

İlgili DevOps İçerikleri: Bu makaledeki süreçleri daha iyi kavrayabilmek için DevOps Nedir ve Yaşam Döngüsü Nasıl İşler? yazımızı okuyabilir; Jenkins'in ürettiği bu WAR dosyasını canlıya almak (Deploy) için ise Apache Tomcat Sunucu Kurulum ve SSL Ayarları rehberimizi inceleyebilirsiniz.

1. Jenkins Kurulumu ve Global Tool Ayarları

Öncelikle Jenkins paneline (genellikle http://localhost:8080 veya sunucu IP'niz) yönetici girişi yapın. Jenkins'in kodunuzu derleyebilmesi için bilgisayarınızdaki (veya sunucunuzdaki) araçların nerede kurulu olduğunu bilmesi gerekir.

Menüden Manage Jenkins > Global Tool Configuration (veya yeni adıyla Tools) bölümüne gidin. Burada sırasıyla JDK (Java), Git ve Maven için kurulum dizinlerini (Örn: JAVA_HOME) tanımlayın veya "Install automatically" (Otomatik kur) seçeneğini işaretleyin.

Jenkins Global Tool Configuration Java Maven Git ayarları

2. Sistemde Java, Git ve Maven Kontrolü

Jenkins'in bu araçları sorunsuz kullanabilmesi için, kurulu oldukları sunucuda komut satırından erişilebilir olmaları gerekir. Sunucu terminalinizde şu komutları çalıştırarak versiyonları doğrulayın:

# Java versiyon kontrolü
java -version

# Git versiyon kontrolü
git --version

# Maven versiyon kontrolü
mvn -v
Önemli: Command not found hatası alırsanız, ilgili aracı işletim sisteminize kurmalı (Örn: sudo apt install maven) veya sistem Path ortam değişkenlerine eklemelisiniz.

3. Gerekli Jenkins Plugin'lerinin Kurulumu

Varsayılan Jenkins kurulumunda bir Java projesini derlemek için gerekli olan bazı Maven özellikleri eksik olabilir. Bu yüzden Manage Jenkins > Manage Plugins > Available sekmesine giderek şu eklentileri aratıp yükleyin:

  • Maven Integration Plugin: "New Item" dediğinizde "Maven Project" seçeneğinin çıkmasını sağlar.
  • Deploy to Container Plugin: (Opsiyonel) Üretilen WAR dosyasını otomatik olarak Tomcat sunucusuna göndermek isterseniz gereklidir.

4. Yeni Bir Maven Projesi (Job) Oluşturma

Ana sayfadan New Item (Yeni Öğe) seçeneğine tıklayın. Projenize açıklayıcı bir isim verin (Örn: E-Ticaret-Backend-Build), ardından listeden Maven Project seçeneğini işaretleyip OK butonuna basın.

Jenkins New Item Maven Project oluşturma ekranı

5. Git Entegrasyonu ve Credentials

Açılan yapılandırma sayfasında, Source Code Management (Kaynak Kodu Yönetimi) bölümüne gidin ve Git'i seçin.

  • Repository URL: Projenizin GitHub veya GitLab HTTPS/SSH linkini yapıştırın.
  • Credentials: Eğer deponuz gizli (Private) ise, Jenkins'in kodu indirebilmesi için buraya Git kullanıcı adınızı ve şifrenizi (veya Personal Access Token) ekleyin.
  • Branches to build: Hangi dalın derleneceğini belirtin (Genellikle */main veya */master).
Jenkins Git repository URL ve branch ayarları

6. Maven Build (Package) Ayarları

Projenin kaynak kodunu çektik, şimdi sıra onu derlemekte. Konfigürasyon sayfasında aşağı inerek Build sekmesini bulun.

Root POM: pom.xml (Eğer dosyanız ana dizindeyse böyle kalmalı).
Goals and options: Buraya Maven'ın hangi işlemi yapacağını yazın. En yaygın kullanılan komut clean package'dır. Bu komut eski derlemeleri temizler ve kodu yeniden derleyerek paketler.

JAR yerine WAR Üretmek

Eğer uygulamanızın bir JAR değil de Tomcat'te çalışacak bir WAR dosyası olarak çıkmasını istiyorsanız, kodunuzdaki pom.xml dosyasının içinde packaging etiketinin war olduğundan emin olun:

<!-- pom.xml dosyası içinde -->
<groupId>com.ornek</groupId>
<artifactId>projem</artifactId>
<version>1.0.0</version>
<packaging>war</packaging>

7. Build İşlemi ve Log Takibi

Tüm ayarları kaydedin. Projenizin ana ekranına yönlendirileceksiniz. Sol menüden Build Now (Şimdi Derle) butonuna tıklayın. Sol alt köşede "Build History" altında işlemin başladığını göreceksiniz.

Jenkins Build Now butonu ve işlem geçmişi

Çalışan numaranın üzerine tıklayıp Console Output (Konsol Çıktısı) sekmesine giderek Maven'ın bağımlılıkları indirişini ve kodu derlemesini canlı olarak izleyebilirsiniz. En altta BUILD SUCCESS yazısını gördüyseniz tebrikler!

Oluşan WAR veya JAR dosyanız varsayılan olarak şu Jenkins çalışma dizininde (Workspace) bulunacaktır:

/var/lib/jenkins/workspace/proje-adiniz/target/projeniz.war

8. Sık Sorulan Sorular (SSS)

Jenkins'te "New Item" menüsünde "Maven Project" seçeneği neden yok?

Çünkü "Maven Integration Plugin" eklentisi henüz Jenkins'e yüklenmemiştir. Manage Jenkins > Manage Plugins yolunu izleyerek bu eklentiyi yükleyip Jenkins'i yeniden başlatmalısınız.

"Couldn't find any revision to build" hatası neden çıkar?

Bu hata, Jenkins'in belirttiğiniz Git Repository adresinden veya belirttiğiniz Branch'ten (Dal) kodu çekemediği anlamına gelir. Genellikle branch adının yanlış yazılmasından (Örn: master yerine main) veya Private depolara erişim için Credentials (şifre/token) eklenmemesinden kaynaklanır.

Oluşan WAR dosyasını otomatik olarak Tomcat'e nasıl gönderirim?

Post-build Actions sekmesinden "Deploy war/ear to a container" seçeneğini ekleyip, Tomcat sunucunuzun IP adresini ve Manager kimlik bilgilerini girerek bu süreci tamamen otomatize edebilirsiniz (Continuous Deployment).

Sonuç

Bu rehberde, Jenkins, Git ve Maven kullanarak bir Java projesinin WAR veya JAR formatında nasıl otomatik olarak derleneceğini (Build) öğrendik. Bu kurulum, sağlam bir CI/CD (Sürekli Entegrasyon) boru hattının ilk ve en önemli adımıdır. Kodunuzu otomatik derlemek, sizi "benim bilgisayarımda çalışıyordu" mazeretlerinden ve manuel işlem hatalarından kalıcı olarak kurtaracaktır.

Etiketler: jenkins maven build, jenkins war oluşturma, ci/cd, devops, jenkins git entegrasyonu

Son Güncelleme: 2026

Latest Software Developers - Yazılım Blog Yazarı Profil Resmi

Yazar

LatestSoftwareDevelopers

Güncel yazılım teknolojilerinin takip edildiği blog.

Devops ile ilgili yorumlar

Yorum Paylaş

EMail Zorunlu alanlar * *