how use gradle build
Bu Öğretici, Gradle'ın Groovy'de Proje oluşturmak ve Görevleri Yazmak için nasıl kullanılacağını ve hem IDE hem de Build Komutunu Kullanarak Gradle Wrapper ile Görevleri çalıştırmayı kapsar:
Çağdaş geliştiriciler olarak, Shift-Left, DevOps, Continuous Integration (CI), Continuous Delivery (CD), vb. Gibi belirli terimleri bilmemiz gerekir.
Bu eğiticide, Groovy ve Gradle hakkında bilgi edinmenin yanı sıra sırasıyla Gradle oluşturma görevleri oluşturmak ve projeler oluşturmak için kullanacağız. Groovy çok yönlü bir dildir - özlü, tanıdık ve kullanımı kolay Java platformu sözdizimine sahiptir ve derleme ve otomasyon görevleri yazmak için kullanılabilir.
Bu dil, bir geliştiricinin iş akışını bir CI / CD ardışık düzenine entegre etmede kullanılan popüler araçlardan biri olan Gradle ile iyi bir şekilde birleşir.
Bu eğitimde Java geliştiricileri için Gradle açıklanmaktadır. Nasıl çalıştığına ilişkin ayrıntıları içerir; Herhangi bir platformda dağıtım için Java'da yazılmış kaynak kodu oluşturmak için Gradle'ın nasıl kullanılacağı.
Çoğu IDE için eklentiler sağlar ve yazılımı daha hızlı teslim etmeyi kolaylaştırır. Yukarıda belirtilen kavramları öğrenme yolculuğumuzda bizi takip etmek için, bir veri havuzuna bakarsanız harika olur. örnek proje Github'da oluşturduğumuz.
Ne öğreneceksin:
- Sistem Gereksinimleri ve Önkoşulları
- Groovy'de İlk Programınızı Yazın - Merhaba Dünya
- Groovy Dilinin Temelleri
- Gradle nedir?
- Gradle Kullanmanın Özellikleri ve Avantajları
- Bir Gradle Projesi Oluşturun
- Git Eylemlerini Kullanarak Gradle Derlemesini Otomatikleştirin
- Sonuç
- Önerilen Kaynaklar
Sistem Gereksinimleri ve Önkoşulları
Bu bölüm bir IDE - IntelliJ IDEA ve Java Geliştirme Kiti (JDK) yükleme adımını içerir. Groovy dilinde ilk derleme görevimizi yazmaya hız kazandırmak için temel kavramların ayrıntıları, bir kod parçacığı yardımıyla açıklanmıştır.
IntelliJ IDEA'yı yükleyin
Java projesini oluşturmak için bir IDE (Entegre Geliştirme Ortamı) kurun. Bu eğitim için IntelliJ IDEA (Community Edition) kullanıyoruz. İndirmek ve Windows / Mac / Linux'a kurmak için lütfen ilgili bağlantıları takip edin.
Pencereler: Buraya Tıkla
Mac: Buraya Tıkla
Linux: Buraya Tıkla
JDK'yı Kurun ve Ayarlayın
JDK'yı indirin . Adımın tamamlanması için bir RedHat hesabına kaydolmanız gerekiyor. İndirildikten sonra, Windows PC'nize kurmak için kurulumu çalıştırın. Kurulduktan sonra komut istemini açın ve çalışıp çalışmadığını kontrol etmek için aşağıda verilen komutları çalıştırın.
Aşağıdaki komutlar, JDK'nın nerede kurulu olup olmadığını bilmek için kullanılabilir.
D: softwaretestinghelp> burada java
D: softwaretestinghelp> burada javac
Şimdi kurulu JDK'yı IDE'miz ile yapılandıralım. IntelliJ IDEA'da Platform ayarlarını açın ve aşağıda gösterilen adımları izleyerek JDK'yı ekleyin. Lütfen bu JDK'nın, bu IDE'yi kullanarak üzerinde çalışacağınız tüm projeler için geçerli olduğunu unutmayın.
Aşama 1: İndirilen JDK'yı resimde gösterildiği gibi platform ayarları altında SDK'ya ekleyin.
Adım 2: Proje SDK'sını güncelleyin resimlerde gösterildiği gibi proje ayarlarında
bir dizi dizisine nasıl eklenir
Yapılandırılmış ayarları uyguladıktan sonra, lütfen IDE'deki küçük yeşil çekiç simgesini kullanarak projeyi bir kez oluşturun.
Örnek Bir Proje Oluşturun
Projeye başlamanın iki yolu vardır. Proje zip dosyasını Github proje sayfasından indirebilir ve Intellij IDEA'da Gradle projesi olarak içe aktarabilir veya projeyi Github deposundan klonlayabiliriz.
Projeyi Github'dan klonlama adımları aşağıda verilmiştir:
Masaüstünüzdeki kısayol simgesine çift tıklayarak IDE'yi açın. Zaten açılmışsa lütfen mevcut projeleri kapatın. Lütfen Git eklentisinin varsayılan olarak IntelliJ IDEA ile birlikte paketlendiğini unutmayın. Bu nedenle lütfen kurmayın.
Aşama 1: IDE'nin Karşılama Ekranında Sürüm Kontrolünden Alın .
Adım 2: Sağlamak Github veri havuzu URL'si ve Clone'a tıklayın.
Aşama 3: Tıklamak Evet Checkout dosyası istemi gösterildiğinde.
4. Adım: Arka plan işleminin bitmesini ve çıktıyı kontrol etmesini bekleyin.
Adım 5: Gezginde proje yapısına bakmak için katlanmış Proje bölmesine tıklayın.
varsayılan ağ geçidi mevcut değildir Windows 7
Groovy'de İlk Programınızı Yazın - Merhaba Dünya
Projede, adı verilen Gradle derleme dosyasını açın build.gradle IDE'nizin dosya gezginini kullanarak ve aşağıda verilen kodu dosyanın sonuna yazın.
task helloWorld { doLast { println('Hello, World!') } }
Şimdi görev oynatma simgesinin bağlam menüsünde Çalıştır'a tıklayarak ilk görevi çalıştırın ve println Groovy'nin dahili yöntemi. Kullanabiliriz 'CTRL + ÜST KRKT + F10' yanı sıra. (Lütfen aşağıdaki resme bakın)
Çıktı, yukarıda gösterilene benzer görünmelidir.
Groovy Dilinin Temelleri
Artık Groovy'de ilk programınızı nasıl oluşturacağınızı öğrendiğinize göre, dilin temellerini hızlandırabilir ve öğrenebiliriz. Bu bölüm değişken adları, sözdizimi, operatörler, yöntemler / işlevler / Kapanışlar gibi kavramları kapsayacaktır.
Ayrıca, bir projenin özelliklerine erişmek ve başka bir projede yazılan kapakları / işlevleri içe aktarmak gibi proje perspektifinden daha alakalı olan kavramları da ele alacağız. build.gradle dosya.
Dilin çeşitli kavramları hakkında bilgi edinmek için aşağıda verilen kod parçacığını ve yorumları inceleyin. Bu kod parçacığı, hızlı bir gözden geçirme ve Groovy kavramlarının revizyonu için oldukça kullanışlıdır.
// Primer on Groovy def var1 = 'var1' // A string variable declared and assigned outside a closure/function def var2 = 4 // An integer // Both of the above given variables are of type Object task task1 { doLast { println('Hello, World!') // A single line comment /* A Multi line comment Print a stored variable. Strings can be concatenated. Parentheses are not mandatory */ println var1 + ' is my variable ' println var1 + 2 // adding a digit to a string - No string conversion required. // operators for strings and numbers println(var2 + 3) def var3 = var2 + 2 // type of var3 is integer and var2 and var1 are Objects println(var3 * var2) // multiplication print(var3 / var2 + '
') // division prints float and observe the concatenation of new line '
' def mylist = (1, 2, 3) // creating a list // for loop on list items for (def i=0; i <= mylist.size() -1 ; i++){ // loop using for println(mylist(i)) } // While loop on list items def i=0 while (i<=mylist.size() - 1) { println(mylist(i)) i++ } } }
Her iki döngüde de listenin sıfır tabanlı bir dizine sahip olduğuna dikkat edin. Daha fazla ayrıntıdan bahsedilmektedir. Harika .
Şimdi Gradle hakkında bilgi edinelim ve bir görevin nasıl çalıştırılacağını görelim.
Gradle nedir?
Bir yapı otomasyon sistemidir. Birden çok dilde yazılmış projeleri destekler. Bu eğitimde Java kullanıyoruz. Bu bölüm Gradle komutlarını komut satırından çalıştırma yöntemini açıklamaktadır. Bunu, örnek projemizin oluşturulması, test edilmesi ve konuşlandırılması için kullanacağız.
Gradle Bağımlılıkları
Herhangi bir açık kaynaklı yazılım projesinde bağımlılık kurmanın ne kadar önemli olduğunu zaten biliyor olabilirsiniz. Gradle, Maven, Jcenter ve Google gibi herkese açık havuzlardaki bağımlılıkları arayabilir.
Bu kod depolarından bahsedin build.gradle dosya aşağıda gösterildiği gibi:
repositories { mavenCentral() jcenter() google() }
Şimdi aşağıda gösterildiği gibi derleme zamanı bağımlılıklarından bahsedin.
dependencies { testCompile group: 'junit', name: 'junit', version: '4.12' // https://mvnrepository.com/artifact/org.seleniumhq.selenium/selenium-java compile group: 'org.seleniumhq.selenium', name: 'selenium-java', version: '3.141.59' }
Bahsedilen bağımlılıklar otomatik olarak indirilir ve Gradle eklentisi tarafından projenin CLASSPATH'ına dahil edilir. IDE'nin proje gezgininde indirilen bağımlılıkları kontrol edin.
Aşağıda verilen komutu kullanarak Gradle sürümünü kontrol edin.
Gradle Kullanmanın Özellikleri ve Avantajları
Aşağıda, Gradle'ın bir kuruluşta DevOps'un bir parçası olarak kolay standartlaştırılmasına ve benimsenmesine yardımcı olan özelliklerden bazıları listelenmiştir.
- Groovy adlı DSL tabanlı bir dil kullanır. Groovy'de derleme görevleri yazmak XML'den daha kolaydır. Dahası, XML'ler hantaldır ve okunması kolay değildir. Ancak Groovy'nin öğrenilmesi ve okunması daha kolaydır.
- Hem monolitik hem de mikro hizmet mimarilerine dayalı projeler için oluşturma yapılarını destekler.
- Belgeler, API'ler gibi birden çok yapı oluşturmak için kullanılabilir. uygulama kavanozları vb. ve bunları aynı yapının parçası olarak yayınlayın.
- Yapıların bir parçası olarak birbirine bağlı görevleri sipariş etmek için oldukça güçlü bir dil yapısına sahiptir.
Ekiplerin, yazılımı daha yüksek kalitede paketlerken yapılarını özelleştirmelerini sağlayan daha birçok özellik vardır. Özellikler hakkında daha fazla ayrıntı verilmiştir İşte .
Şimdi devam edelim ve bir Gradle oluşturma görevi yürütelim.
Gradle Görevi Çalıştırın
Task1 adlı derleme görevini çalıştırmak için projenin kök dizini altında aşağıda gösterilen komutu çalıştırın.
D: softwaretestinghelp gitrepo>. Gradlew.bat görev1
Çıkışı aşağıda gösterildiği gibi kontrol edin.
Bir Gradle Projesi Oluşturun
Bu bölümde proje yapısını inceleyecek, çeşitli bileşenlerini anlayacak ve projeyi inşa edeceğiz.
Örnek Projenin Yapısı
Tartışılan örnek projenin bir src iki ana dizine (klasörlere) sahip klasör yani. Ana ve test. Ana dizin, HelloWorld adlı örnek bir komut satırı uygulamasıyla ilgili Java kaynak koduna sahiptir.
HelloWorld sınıfının iki yöntemi vardır, yani verilen bağımsız değişken listesinden ilk bağımsız değişkeni yazdıran ana yöntem ve ikinci bağımsız değişkenin ilk 3 karakteriyle birleştirilmiş 1. bağımsız değişkeni yazdıran bir yöntem1 yöntemi.
Test klasörü, Uygulamamızda yukarıda belirtilen yöntemleri test etmek için testler içeren bir JUnit test sınıfına sahiptir. Lütfen bu testlerin kaynak kodunu kontrol edin.
Örnek proje ayrıca bir Gradle sarıcı klasörüne sahiptir. Derleme görevlerinizi çalıştırırken belirtilen Gradle sarmalayıcı sürümünü kullanmanız gerekir.
Gradle Sürümü çok önemlidir ve geliştiriciler kodunu paylaşmak istediklerinde, proje dosyalarıyla birlikte bir sarmalayıcıyı paylaşmak her zaman yararlıdır. Sarmalayıcı Gradle'ın beyan edilen sürümünü otomatik olarak indirdiği için çok zaman kazandırır.
Derleme Görevlerine Örnekler
Kodu belgelemek, bir geliştiricinin en önemli özelliklerinden biri olarak kabul edilir. Belgeleri paylaşmak olağan bir uygulamadır. html biçim. Gradle üretmeye yardımcı olur javadocs içinde html format projeleri. Aşağıdaki komutu kullanarak javadocs üretebiliriz.
D: softwaretestinghelp gitrepo>. Gradlew.bat javadoc
lütfen kontrol ediniz javadoc projede derleme dizini altında ve aşağıdaki görselde gösterilenlere benzer sonuçları görmelisiniz.
Lütfen takip edin javadoc Java belgeleri yazılırken bu bağlantıda verilen stil kılavuzu.
Şimdi de test kaynakları için dokümantasyon oluşturmak için build.gradle dosyasını değiştirelim.
Build.gradle dosyasını aşağıda gösterilen kod parçacığı ile güncelleyin
javadoc { classpath += sourceSets.test.compileClasspath source += sourceSets.test.allJava }
Ana kaynakların yanı sıra test kaynaklarının belgelerini oluşturmak için Gradle javadoc komutunu tekrar çalıştırın.
Gradle derleme görevleri hakkında daha fazla ayrıntı görülebilir İşte .
Daha fazla Gradle görevi bilmek için komut aşağıda verilmiştir.
D:softwaretestinghelpgitrepo> .gradlew.bat tasks
Şimdi projeyi oluşturalım.
Gradle Projesi Oluşturun
Örnek projeyi komut satırından oluşturmak için aşağıda belirtilen adımları izleyin:
- Proje yolunu değiştirin.
- Projeyi oluşturmak için aşağıdaki komutu kullanın.
Bununla birlikte, IDE'deki küçük çekiç simgesine tıklayarak da projeyi oluşturabilirsiniz.
D:softwaretestinghelpgitrepo> .gradlew.bat build
Build komutunun çıktısı aşağıda gösterildiği gibi olacaktır.
Derleme çalıştırma sonuçlarındaki hatalar, bu öğreticinin amacına yöneliktir ve ihmal edilebilir.
Bu yapının bir parçası olarak çalıştırılan testlerin sonuçlarını görmek istiyorsanız, aşağıdaki resimde gösterildiği gibi raporlar klasörünü kontrol edebilirsiniz.
Sonuçları kontrol etmek için index.html dosyasını bir tarayıcıda açabilirsiniz.
Git Eylemlerini Kullanarak Gradle Derlemesini Otomatikleştirin
Geliştiriciler olarak, operasyon ekibiyle işbirliği yapmak için projelerimizi oluşturmak, test etmek ve yayınlamak için iş akışlarımızı oluşturmalıyız.
Dahası, kendi başımıza bir ortam oluşturmak göz korkutucu bir görev olabilir ve üretkenliğimiz üzerinde yansımaları olabilir. Yeni bir DevOps kültürünün ortaya çıkmasıyla birlikte, derleme hatalarından kaynaklanan zorlukları azaltmak için iş akışlarımızı otomatikleştirmemiz gerekiyor.
Bu arada, coğrafi olarak dağınık olan geliştiricilere sahip yazılım projeleri, Git gibi SCM yazılımlarının yardımıyla işbirliğine ihtiyaç duyar.
Github Actions'a teşekkürler. Artık oluşturduğunuz herhangi bir Github deposunda ek bir sekme görebilirsiniz. Geliştirme iş akışlarınızı oluşturabilir ve bunları push, release, pull_request gibi herhangi bir Github olayında çalıştırabilirsiniz. Bu, CI / CD'nin gücünü geliştirici topluluğuna verme açısından devrim niteliğindedir.
Git Eylemleri yapılandırmalarını şurada açın: .github / workflows / gradle.yml projedeki dosya. Projemizi Windows üzerinde geliştirdiğimize ve Git Eylemlerinde onu ubuntu_latest üzerinde test ettiğimize dikkat edin.
c ++ 'da basit ikili ağaç programı
Github Actions ayrıca projenizi müşterilere teslim etme hızını artırabileceğimiz topluluk destekli iş akışlarına da sahiptir. Yapınızın durumuna bağlı olarak, projeyi serbest bırakıp bırakmayacağınıza karar verebilirsiniz. Örnek projenin deposu için bir ön sürüm örneği verdik.
İsteğe Bağlı Bir Egzersiz
Aşağıda, deneyebileceğiniz adımlardan bazıları verilmiştir.
- Github'da yeni bir depo oluşturun.
- Gradle_sample projesine yeni uzaktan kumandanın bir referansını ekleyin.
- Değişiklikleri yeni depoda yayınlamak için komutları kullanın.
- Git Eylemleri altında Gradle derlemeniz için sonuçları gözlemleyin.
Sonuç
Gradle, LinkedIn, Adobe, Netflix vb. Şirketlerdeki ekipler tarafından kullanılıyor ve ustalaşmak için harika bir araçtır. Gradle ile çalışmak, Maven ve Ant gibi diğer geliştirme araçlarında çalışmaktan çok daha kolaydır.
Bugünlerde her şey hız ve çeviklik ile ilgili. Gradle ve Groovy'yi öğrenmek, DevOps ilkelerini daha kolay benimsemenize yardımcı olabilir.
Özetlemek gerekirse, bir Gradle projesi oluşturma, Groovy'de derleme görevleri yazma ve hem IDE hem de Gradle build komutunu kullanarak geliştirme sırasında Gradle wrapper ile görevleri çalıştırma kavramlarını ele aldık.
Yapıyı ubuntu_latest gibi farklı bir hedef platformda da test ettik. Bunu, bir proje sürümüyle ilgili bir karar vermede yardımcı olabilecek bir yapı durumu ile kullanabiliriz.
Selenium Webdriver kullanan bir otomasyon mühendisi iseniz, Gradle ile bir Selenium projesinin yapılandırılması ve kurulmasıyla ilgili yaklaşan öğreticimizi okumayı ihmal etmeyin.
Umarım bu eğitim Gradle Concepts hakkındaki bilginizi zenginleştirirdi !!
Önerilen Kaynaklar
- Gradle Vs Maven ve Maven Eklentileri
- Selenium ile Gradle Projesi Nasıl Oluşturulur
- Spock Eğitimi: Spock ve Groovy ile Test Etme
- SoapUI'de Temel Harika Senaryo Nasıl Yazılır - SoapUi Eğitimi # 6
- SoapUI Groovy Komut Dosyasında Özellikler Nasıl Kullanılır - SoapUI Eğitimi # 7
- Gelişmiş SoapUI Harika Komut Dosyası Kavramlarını Öğrenin - SoapUI Eğitimi # 9
- SoapUI Harika Komut Dosyalarında İstisna Nasıl Başa Çıkılır - SoapUI Eğitimi # 11
- Selenium için Maven Build Automation Tool ve Maven Project Setup Kullanımı - Selenium Tutorial # 24