2013-03-20 10 views
8

Pracuję nad rozszerzeniem skryptu kompilacji ANT, aby umożliwić agentowi kompilacji TeamCity uruchamianie testów Selenium.W jaki sposób skrypt budujący ANT może zabić proces systemu Windows?

W tym celu należy uruchomić serwer z selenem, który nie jest wyłączany na końcu. Dodałem więc dodatkowy cel, aby wykonać taskkill na nazwie exe na końcu każdej kompilacji TC.

Czy taskkill potrzebuje bezwzględnej ścieżki do exe, ponieważ poniższe nie działa;

<target name="shutdown.server" depends="init.properties" description="Shutdown the server after Selenium"> 
    <exec osfamily="windows" executable="cmd.exe" spawn="true"> 
     <arg line="taskkill /f /t /im app.exe"/> 
    </exec> 
</target> 

Proces wydaje się mieć kilka dzieci, dlatego Poszedłem z /f /t ale jak mówię, żaden z nich w momencie zamykania.

Odpowiedz

8

Cóż, to było łatwe;

<target name="shutdown.server" depends="init.properties" description="Shutdown the server after Selenium"> 
    <exec executable="taskkill"> 
     <arg line="/im app.exe /f /t"/> 
    </exec> 
</target> 
+0

exec ma właściwość wykonywalną? nie widziałem tego w dokumentacji – koo9

+0

@ koo9 Nie jestem pewien aktualnego stanu mrówki, ale w 2013 roku była to własność, więc daj jej szansę zobaczenia czy nadal działa. –