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

TheSecretTokeEpingAphp-PowerEdwebSiterUnningSmoothlyShyunderHeavyLoadInVolvOLVOLVOLDEVERSALKEYSTRATICES:1)emplactopCodeCachingWithOpcachingWithOpCacheToreCescriptexecution Time,2)使用atabasequercachingCachingCachingWithRedataBasEndataBaseLeSendataBaseLoad,3)

你應該關心DependencyInjection(DI),因為它能讓你的代碼更清晰、更易維護。 1)DI通過解耦類,使其更模塊化,2)提高了測試的便捷性和代碼的靈活性,3)使用DI容器可以管理複雜的依賴關係,但要注意性能影響和循環依賴問題,4)最佳實踐是依賴於抽象接口,實現鬆散耦合。

是的,優化papplicationispossibleandessential.1)empartcachingingcachingusedapcutorediucedsatabaseload.2)優化的atabaseswithexing,高效Quereteries,and ConconnectionPooling.3)EnhanceCodeWithBuilt-unctions,避免使用,避免使用ingglobalalairaiables,並避免使用

theKeyStrategiestosigantificallyBoostPhpaPplicationPerformenCeare:1)UseOpCodeCachingLikeLikeLikeLikeLikeCacheToreDuceExecutiontime,2)優化AtabaseInteractionswithPreparedStateTementStatementStatementAndProperIndexing,3)配置

aphpdepentioncontiveContainerIsatoolThatManagesClassDeptions,增強codemodocultion,可驗證性和Maintainability.itactsasaceCentralHubForeatingingIndections,因此reducingTightCightTightCoupOulplingIndeSingantInting。

選擇DependencyInjection(DI)用於大型應用,ServiceLocator適合小型項目或原型。 1)DI通過構造函數注入依賴,提高代碼的測試性和模塊化。 2)ServiceLocator通過中心註冊獲取服務,方便但可能導致代碼耦合度增加。

phpapplicationscanbeoptimizedForsPeedAndeffificeby:1)啟用cacheInphp.ini,2)使用preparedStatatementSwithPdoforDatabasequesies,3)3)替換loopswitharray_filtaray_filteraray_maparray_mapfordataprocrocessing,4)conformentnginxasaseproxy,5)

phpemailvalidation invoLvesthreesteps:1)格式化進行regulareXpressecthemailFormat; 2)dnsvalidationtoshethedomainhasavalidmxrecord; 3)


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

SublimeText3 英文版
推薦:為Win版本,支援程式碼提示!

PhpStorm Mac 版本
最新(2018.2.1 )專業的PHP整合開發工具

SAP NetWeaver Server Adapter for Eclipse
將Eclipse與SAP NetWeaver應用伺服器整合。

Safe Exam Browser
Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。

WebStorm Mac版
好用的JavaScript開發工具