【问题标题】:Artisan CronJob - There are no commands defined in the "xyz" namespaceArtisan CronJob - “xyz”命名空间中没有定义命令
【发布时间】:2014-08-08 11:47:01
【问题描述】:

我设置的工匠命令有点奇怪。

命令是:

cd /var/sites/p/mydomain.co.uk/public_html/ && /usr/bin/php-5.4 artisan property:import

此命令在通过 ssh 或在本地机器上运行时完美运行,但在设置为 CronJob 时无法运行,并在 Laravel 日志文件中返回以下错误。

[2014-06-17 13:50:06] production.ERROR: exception 'InvalidArgumentException' with message 'There are no commands defined in the "property" namespace.' in /var/sites/p/mydomain.co.uk/public_html/vendor/symfony/console/Symfony/Component/Console/Application.php:514

Stack trace:
#0 /var/sites/p/mydomain.co.uk/public_html/vendor/symfony/console/Symfony/Component/Console/Application.php(548): Symfony\Component\Console\Application->findNamespace('property')
#1 /var/sites/p/mydomain.co.uk/public_html/vendor/symfony/console/Symfony/Component/Console/Application.php(188): Symfony\Component\Console\Application->find('property:import')
#2 /var/sites/p/mydomain.co.uk/public_html/vendor/symfony/console/Symfony/Component/Console/Application.php(121): Symfony\Component\Console\Application->doRun(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#3 /var/sites/p/mydomain.co.uk/public_html/artisan(58): Symfony\Component\Console\Application->run()
#4 {main} [] []

我很困惑,不知道为什么在作为 cron 运行时找不到“属性”命名空间。通过 ssh 运行完全相同的命令时,它运行良好,在本地计算机上运行时,它运行良好。

artisan 中是否有任何东西导致它在作为 cronjob 运行时根本不加载 app/start/artisan.php 文件?

任何帮助将不胜感激。如果您需要更多详细信息,请告诉我,我会尽力提供。

谢谢,

乔

【问题讨论】:

    标签: php laravel laravel-4 cron


    【解决方案1】:

    经过长时间检查并与托管服务提供商交谈后发现,运行/usr/bin/php-5.4 正在运行 cgi 版本的 php,将其更改为 /usr/bin/php-5.4-cli 解决了问题。

    这当然取决于您的托管服务提供商的设置。

    【讨论】:

      猜你喜欢
      • 2021-03-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-11-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多