Gradle کا نوٹ
Publié le 23 May 2022
Sommaire
- مدد دکھائیں
- JVM کی سسٹم پراپرٹی تعین کریں : `-D, --system-prop
- بیلڈ سکرپٹ کے لئے پروپرنٹی پراجیکٹ کا تعین کریں : `-Pmyprop=myvalue
- Gradle ka starter directory muhaddad karta hai. Mafrouhah qadar moghua directory hai.
- کمانڈ لاائن سے خاصیت 'param_component' کو سروج کریں:
- ایک عادی پراجیکٹ میں کاتلن ڈی ایس ایل کے ذریعے ایک سروس سیٹ میں فولڈر شامل کریں
- ایک Android پروژیکٹ میں Groovy DSL کے ساتھ source-set میں ایک فلڈر شامل کریں
- ایک ساب مڈول بنانے اور ٹیسٹ کرنے سے پرہیز کریں
- ایک فائل کو ٹار کریں
- بیلڈ کی انحصارات دکھائیں
- reduce کے استعمال کا مثال : فہرست کو اسٹرنگ میں جوڑنا
- مخصوص کام کی تفصیل حاصل کریں
- workingDir root سے ایک tâche لچالاں کرنے کے لیے، tâche کو
:سے پیشوند لگا دیں - فشل ہوئے کاموں کو دوبارہ شروع کرنے کے لیے
--rerun-tasksاختیار استعمال کریں - ایک مخصوص پروژیکٹ میں دوسرے ڈائریکٹری سے ایک ٹاسک چلائیں
مدد دکھائیں
./gradlew --help
JVM کی سسٹم پراپرٹی تعین کریں : `-D, --system-prop
./gradlew -Dmyprop=myvalue
#ou
./gradlew --system-prop myvalue
بیلڈ سکرپٹ کے لئے پروپرنٹی پراجیکٹ کا تعین کریں : `-Pmyprop=myvalue
./gradlew -Pmyprop=myvalue
#ou
./gradlew --project-prop myvalue
Gradle ka starter directory muhaddad karta hai. Mafrouhah qadar moghua directory hai.
./gradlew -p ~/src/next_startup
#ou
./gradlew --project-dir ~/src/next_startup
کمانڈ لاائن سے خاصیت 'param_component' کو سروج کریں:
./gradlew -Pparam_component=CUSTOM_VALUE
ایک عادی پراجیکٹ میں کاتلن ڈی ایس ایل کے ذریعے ایک سروس سیٹ میں فولڈر شامل کریں
sourceSets {
getByName("test"){
java.srcDir("src/scripts/groovy")
}
getByName("test"){
java.srcDir("src/scripts/kscript")
}
getByName("test"){
java.srcDir("src/test/javascript")
}
}
ایک Android پروژیکٹ میں Groovy DSL کے ساتھ source-set میں ایک فلڈر شامل کریں
android {
sourceSets {
main.java.srcDirs += "src/main/../../../../ceelo/domain/src/main/java/"
test.java.srcDirs += "src/test/../../../../ceelo/domain/src/test/java/"
}
}
ایک ساب مڈول بنانے اور ٹیسٹ کرنے سے پرہیز کریں
gradle build -x :excluded-module:check -x :excluded-module:assemble -x :excluded-module:build
فائلوں کو منتقل کریں
tasks.register("moveWebappNode") {
doLast {
ant.withGroovyBuilder {
"move"(
"webapp/node_modules" to "$rootDir/webapp-src/node_modules",
)
}
}
}
ایک فائل کو ٹار کریں
tasks.register<Tar>("tarWebapp") {
dependsOn("moveWebappNpm")
group = WEBAPP
description = "tar webapp"
doLast {
setOf(
"build",
"target",
"node_modules"
).forEach { dir -> exclude { it.name .dir } }
archiveFileName.set("webapp.tar")
destinationDirectory.set(File("${rootDir.absolutePath}$sep$WEBAPP_SRC"))
}
}
بیلڈ کی انحصارات دکھائیں
tasks.register("printDependencies") {
description = "print project dependencies"
group = WEBAPP
doLast {
println("${project.name} dependencies")
mutableMapOf<String, Map<String, String>>(
"buildDependencies" to buildDependencies,
"domainDeps" to domainDeps,
"domainTestDeps" to domainTestDeps,
).apply { putAll(appModules) }
.forEach { module ->
if (module.value.isNotEmpty()) {
println("${module.key}:")
module.value.forEach { println(dependency(it)) }
println()
}
}
}
}
reduce کے استعمال کا مثال : فہرست کو اسٹرنگ میں جوڑنا
tasks.register("printWebappSrc") {
description = "print webapp sources"
group = WEBAPP
doLast {
webAppSrc
.reduce { acc, s -> "$acc\n\t$s" }
.run { println("$WEBAPP_SRC: $this\n") }
}
}
مخصوص کام کی تفصیل حاصل کریں
./gradlew -q help --task foo
workingDir root سے ایک tâche لچالاں کرنے کے لیے، tâche کو : سے پیشوند لگا دیں
./gradlew :foo
فشل ہوئے کاموں کو دوبارہ شروع کرنے کے لیے --rerun-tasks اختیار استعمال کریں
./gradlew check --rerun-tasks
ایک مخصوص پروژیکٹ میں دوسرے ڈائریکٹری سے ایک ٹاسک چلائیں
اختیار`-p` (ou --project-dir) یہ گریڈل پروジェکٹ تک رسائی کا راستہ تعین کرنے اور اس پر ایک کام کرنے کی اجازت دیتا ہے،即使 موجودہ ڈائریکٹری مختلف ہو۔
مثال کے طور پر، کام کو شروع کرنے کے لیے`build`پروجیکٹ موجود میں کا`~/projets/mon-autre-projet`کسی دیگر ڈائریکٹری میں ہونے کے दौरान :
./gradlew -p ~/projets/mon-autre-projet build
یہ متعدد پراجیکٹ پر ایک مرکزی مقام سے کارروائیاں سکریپٹ کرنے کے لیے خاص طور پر مفید ہے۔
۔ دیکھیں بھی :