سؤال

أود تحديد مهمة جديدة تسمى dbStatus أن يدعو (أو يمتد?) run, ، ويتجاوز فقط args الملكية.

apply plugin: 'application'

run {
    args "server", "service.yml"
}


task(dbStatus, type: run) {
    args "db", "status", "service.yml
}

هذا لا يعمل لأن "run" ليست فئة مهمة صالحة.هل هناك طريقة سريعة لتمديد مهمة ومجرد تجاوز خاصية?

تحديث:القرار

لسوء الحظ ، كان علي فقط تحديد علامة تجارية جديدة JavaExec المهمة ، وإعادة إنشاء المنطق الذي run تم تكوين للقيام به.هنا هو ما خطرت لي:

task(dbStatus, type: JavaExec) {
    main mainClassName
    classpath sourceSets.main.runtimeClasspath
    args "db", "status", "service.yml"
}

لا أعتقد أن هذا هو بالضبط نفس run, ، لأنه لا يعمل ضد البناء jar لا أصدق ، لكنه يعمل لأغراضي.

هل كانت مفيدة؟

المحلول

لا يمكن "تمديد" المهام بهذه الطريقة.بدلا من ذلك ، أعلن عن مهمة أخرى وقم بتكوينها حسب الاقتضاء.(من الشائع تكوين مهام متعددة في وقت واحد لتجنب تكرار التعليمات البرمجية.)

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top