Groovy AntBuilder Выполнить задачу в фоновом режиме

Могли бы использовать вашу помощь:

Попытка выполнить задачу муравья в Groovy, чтобы она не ожидала ответа от скрипта (т.е. запускается в фоновом режиме)

Я пробовал следующие два способа безуспешно

//Cannot find script
ant.exec(failonerror: "true", executable: "scriptname.sh &") 

// Says: You have used an attribute or nested element which is not compatible with spawn 
ant.exec(failonerror: "true", spawn:"true", executable: "scriptname.sh") 

Любой совет, как этого добиться? Я искал в Google, но не могу найти хороших примеров для Groovy.

Спасибо, ребята, я ценю помощь.

2 ответа

Решение

Вместо того, чтобы пытаться понять, как это сделать в AntBuilder, где имеется ограниченная документация, я создал второй сценарий оболочки, который вместо этого выполнял нужный сценарий оболочки в фоновом режиме.

#!/bin/bash

command="./scriptname.sh  $1 $2 $3 $4"

nohup $command > /dev/null 2>&1 &

script.sh

#!/bin/bash

cat > foo.conf << EOF
NameVirtualHost 127.0.0.1
<VirtualHost 127.0.0.1>
    ServerName localhost
</VirtualHost>
EOF

build.gradle

task external << {
    ant.exec(spawn:'true', executable: "${project.projectDir}/script.sh") 
}

build.gradle а также script.sh должен находиться в той же папке в этом решении. Вы должны предоставить полный путь к executable,

Другие вопросы по тегам