كيفية تشغيل أهداف Gant من داخل وحدة تحكم Grails؟
سؤال
افترض أن لدي كتلة من كود Gant:
target(echo:"test"){
ant.echo(message:"hi")
}
setDefaultTarget("echo")
عادة ما يتم تشغيل هذا من سطر الأوامر.
كيف يمكنني وضع الكتلة في وحدة تحكم Grails وتشغيلها من هناك؟
المحلول
يمكنك استخدام Antbuilder لهذا:
class FooController {
def index = {
def ant = new AntBuilder()
ant.echo(message:"hi")
}
}
نصائح أخرى
يمكنك إنشاء برنامج نصي رائع يقول DynaScript_.groovy يحتوي على رمز Gant الخاص بك ووضع ملف البرنامج النصي هذا في مجلد {Grailshome}/scripts.
ثم يمكنك استدعاء ملف البرنامج النصي من وحدة التحكم الخاصة بك مثل هذا:
class FooController {
def index = {
def process = "cmd /c grails dyna-script".execute()
def out = new StringBuilder()
process.waitForProcessOutput(out, new StringBuilder())
println "$out"
}
}
من المهم أن ينتهي اسم البرنامج النصي الخاص بك بأحرف سطرية.
لا تنتمي إلى StackOverflow