Intellij Idea ve Gradle
Gradle, Türkçe Locale ile çalışmayabiliyor. Hata da jacoco ile ortaya çıkıyor. Hata şöylejava.lang.IllegalArgumentException: No enum constant org.jacoco.agent.rt.internal_c13123e.core.runtime.AgentOptions.OutputMode.fıle
O yüzden Intellij'i İngilizce locale ile başlatmak gerekebiliyor. Şöyle yaparız
Help"->"Edit Custom VM Options" açılır ve en alta
-Duser.language=en
satırı eklenir. Gradle şöyle kullanılır
.\gradlew -Duser.language=en build
IntelliJ Terminal
Terminal aslında bir Power Shell terminali. Terminali iki şekilde kullanabiliriz.
1. gradle komutunu yazar ve Ctrl + Enter ile IntelliJ tarafından çalıştırılmasını isteyebiliriz.
2. Power Shell tarafından çalıştırılmasını isteyebiliriz. gradlew.bat dosyasını çalıştırmak için Power Shell
.\gradlew ...
.\gradlew build -x test
Gradle şöyle kullanılır
.\gradlew -Duser.language=en build
build.gradle Dosyası
Kullanılacak plugin'ler ve dependencies bu dosyaya yazılır
allprojects Block
Örnek
Şöyle yaparız
allprojects { gradle.projectsEvaluated { tasks.withType(JavaCompile) { options.compilerArgs << "-Xlint:unchecked" << "-Xlint:deprecation" } } }
buildScript Block
Build işlemi için gereken ayarları içerir. Açıklaması şöyle
The “buildscript” block only controls dependencies for the buildscript process itself, not for the application code, which the top-level “dependencies” block controls.
Örnek
Şöyle yaparız
buildscript { repositories { google() jcenter() } dependencies { classpath 'com.android.tools.build:gradle:3.1.1' } }
Açıklaması şöyle
But what does that block do? Basically it defines dependencies which are required for the build itself. Or in other words: It defines dependencies which are required to build your Application (whatever your “Application” is (Android App, Gradle Plugin, Swift Desktop Application…)).In our Android example we have to define the Android Gradle Plugin dependency which helps us to build an APK:
plugins Block
Açıklaması şöyle
The “new” plugins block is not really new. It was already introduced in Gradle 2.1.But there are some “limitations”. By default the plugin block can only resolve plugins which are either:- Core Plugins (provides by Gradle themself). These are e.g.: org.gradle.java, org.gradle.groovy, org.gradle.java-gradle-plugin and so on…- Published to the Gradle Plugin Portal.
war plugin yazısına bakabilirsiniz
spring-boot-gradle-plugin yazısına bakabilirsiniz
Örnek
ear çıktısı için şöyle yaparız
plugins {id 'ear' }
Örnek
SpringBoot için şöyle yaparız
plugins {id 'org.springframework.boot' version '2.1.2.RELEASE' }
Örnek ver
dependencies Block
Dependency tipleri şunlar olabilir
compile
compileOnly
implementation
testImplementation
testRuntimeOnly
compileOnly
Örnek - lombok
Şöyle yaparız
configurations {compileOnly {extendsFrom annotationProcessor}}repositories {mavenCentral()}dependencies {implementation 'org.springframework.boot:spring-boot-starter-data-jpa'implementation 'org.springframework.boot:spring-boot-starter-data-rest'implementation 'org.springframework.boot:spring-boot-starter-web'compileOnly 'org.projectlombok:lombok'runtimeOnly 'com.h2database:h2'annotationProcessor 'org.projectlombok:lombok'testImplementation 'org.springframework.boot:spring-boot-starter-test'}
Custom Task Block
Örnek
Şöyle yaparız
task hello {doLast {println 'Hello Baeldung!'}}
Örnek - Zip
Şöyle yaparız. build->distributions altında bir foo.zip dosyası yaratır
// Task for building the zip file for upload task buildZip(type: Zip) { // set the base name of the zip file from compileJava from processResources into('lib') { from configurations.runtimeClasspath } } build.dependsOn buildZip
Custom Gradle File Block
apply from ile kendi dosyamız da dahil edilebilir.
ÖrnekŞöyle yaparız
apply from: "$rootDir/gradle/utils.gradle"
settings.gradle Dosyası
settings.gradle Dosyası yazısına taşıdım
gradle/wrapper/gradle-wrapper.properties Dosyası
Bu dosyada kullanılacak gradle sürümü belirtilir. Kullanılan gradle sürümü ".gradle" dizini altında görülebilir. Kullanılmayan sürüm silinebilir.
Tasks
Eklenen plugin'ler task tanımlarlar
application
build
build setup
distribution
documentation
help
other
verification
Intellij Build And Run
Intellij "Build and Run Using" ve "Run tests Using" işlemleri için normalde altta gradle kullanır.
Hiç yorum yok:
Yorum Gönder