Tak więc piszę plik build ant, który będzie używany w temp cruise control i wpadł na dziwny problem. Zrobiłem Google problem, ale nie natrafiłem na żadne konkretne rozwiązania, więc pomyślałem, że zamieściłbym tutaj pytanie.CruiseControl - Sprawdzanie lint PHP działa poprzez ANT, ale nie poprzez CruiseControl
Mam następujący ant zadanie:
<target name="module.lint">
<apply executable="/usr/bin/php" failonerror="true">
<arg value="-l" />
<fileset dir="/path/to/my/elite/code" includes="**/*.php" />
</apply>
</target>
I kiedy uruchomić go za pomocą:
ant -buildfile /path/to/my/elite/buildfiles/project/elite/build.xml module.lint
To działa dobrze, ale gdy próbuję zbudować projekt poprzez CruiseControl GUI, otrzymuję następujące błędy:
[cc]Aug-09 15:51:04 ScriptRunner - fileset: Setup scanner in dir /path/to/my/elite/code with patternSet{ includes: [**/*.php] excludes: [] }
[cc]Aug-09 15:51:04 ScriptRunner - [apply] Executing '/usr/bin/php' with arguments:
[cc]Aug-09 15:51:04 ScriptRunner - [apply] '-l'
[cc]Aug-09 15:51:04 ScriptRunner - [apply] '/path/to/my/elite/code/Script.php'
[cc]Aug-09 15:51:04 ScriptRunner - [apply]
[cc]Aug-09 15:51:04 ScriptRunner - [apply] The ' characters around the executable and arguments are
[cc]Aug-09 15:51:04 ScriptRunner - [apply] not part of the command.
[cc]Aug-09 15:51:04 ScriptRunner - Execute:Java13CommandLauncher: Executing '/usr/bin/php' with arguments:
[cc]Aug-09 15:51:04 ScriptRunner - '-l'
[cc]Aug-09 15:51:04 ScriptRunner - '/path/to/my/elite/code/Script.php'
[cc]Aug-09 15:51:04 ScriptRunner -
[cc]Aug-09 15:51:04 ScriptRunner - The ' characters around the executable and arguments are
[cc]Aug-09 15:51:04 ScriptRunner - not part of the command.
[cc]Aug-09 15:51:04 ScriptRunner - [apply] No syntax errors detected in /path/to/my/elite/code/Script.php
Nie wiem, dlaczego otrzymuję "znaki ... nie jest częścią comm i "błędy, chociaż wygląda na to, że czek linta rzeczywiście został wykonany.
Co muszę zrobić, aby naprawić błędy "znaków ... nie będących częścią polecenia"?
Sprawdzę to i złożę raport. Ale nawet jeśli przełączę się na gadatliwość, dlaczego kontrola tempomatu będzie zgłaszać błędy, jeśli zawartość pliku kompilacji jest poprawnie skonstruowana? –
Przejście do oznaczenia jako zaakceptowana odpowiedź. Nie miałem czasu sprawdzić kodu kontroli tempomatu, aby sprawdzić, czy działa on w trybie "debugowania", ale nawet jeśli tak jest, nadal nie ma sensu, dlaczego błędy są zgłaszane, jeśli plik buildfile jest poprawnie sformatowany. –
To nie są błędy, tylko część sposobu, w jaki polecenia Ant logują polecenia/exec w trybie szczegółowym. –