jenkins自动构建laravel 4时,phpunit执行时vendor/autoload.php报语法错误
在同一个环境下,php在终端使用ant构建项目执行phpunit测试没有问题,但是在jenkins自动构建时会报错:
phpunit:
[exec] PHP Parse error: syntax error, unexpected '<<' (T_SL) in /var/lib/jenkins/jobs/hwawoontest/workspace/vendor/autoload.php on line 7
[exec] PHP Stack trace:
[exec] PHP 1. {main}() /usr/local/bin/phpunit:0
[exec] PHP 2. PHPUnit_TextUI_Command::main() /usr/local/bin/phpunit:612
[exec] PHP 3. PHPUnit_TextUI_Command->run() phar:///usr/local/bin/phpunit/phpunit/TextUI/Command.php:138
[exec] PHP 4. PHPUnit_TextUI_Command->handleArguments() phar:///usr/local/bin/phpunit/phpunit/TextUI/Command.php:148
[exec] PHP 5. PHPUnit_TextUI_Command->handleBootstrap() phar:///usr/local/bin/phpunit/phpunit/TextUI/Command.php:651
[exec] PHP 6. PHPUnit_Util_Fileloader::checkAndLoad() phar:///usr/local/bin/phpunit/phpunit/TextUI/Command.php:817
[exec] PHP 7. PHPUnit_Util_Fileloader::load() phar:///usr/local/bin/phpunit/phpunit/Util/Fileloader.php:77
[exec] PHP 8. include_once() phar:///usr/local/bin/phpunit/phpunit/Util/Fileloader.php:93
BUILD FAILED
/var/lib/jenkins/jobs/hwawoontest/workspace/build.xml:168: exec returned: 255
autoload.php的代码:
<?php
// autoload.php @generated by Composer
require_once
DIR
. '/composer' . '/autoload_real.php';
return ComposerAutoloaderInit34c7d9c593778809996626035f6ae5ee::getLoader();
下面这一段是build.xml的代码片段:
<target name="phpunit" description="Run unit tests with PHPUnit">
<exec executable="phpunit" failonerror="true">
<arg value="-c" />
<arg value="${basedir}/phpunit.xml.dist" />
<arg value="--coverage-html" />
<arg value="${basedir}/build/coverage" />
</exec>
</target>
为什么会这样,哪里有问题?