2014-06-19 7 views
0

에서 작업을 실행이 스크립트의 응답을 기다리지 않도록 그루비에 개미 작업을 실행하려고그루비 AntBuilder 당신의 도움을 사용할 수 배경

을 (즉, 백그라운드에서 실행)

I을 성공하지 못한 다음 두 가지 방법을 시도했습니다.

//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에 대한 좋은 예는 찾을 수 없습니다.

감사합니다. 도움을 주셔서 감사합니다.

답변

0

제한된 문서가있는 AntBuilder에서이를 수행하는 방법을 찾는 대신, 배경에서 원하는 셸 스크립트를 대신 실행하는 두 번째 셸 스크립트를 만들었습니다.

#!/bin/bash 

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

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

script.sh

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

build.gradlescript.sh이 용액 동일한 폴더에 있어야

#!/bin/bash 

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

build.gradle. executable에 대한 전체 경로를 제공해야합니다.

+0

작동 여부 – Opal

+0

불행하게도 나는 gradle에 익숙하지 않고, 쉘 스크립트가있는 마운트 된 드라이브를 사용하여 시스템 아키텍처가 상당히 향상되었습니다. 나는 그것을 달성하기 위해 두 번째 셸 스크립트를 작성하여 내 솔루션을 단순화하고 노력했다. 대답 할 시간을 내 주셔서 감사합니다. – azdragon2