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
,