PHP:Magento:Cron作业抛出;无效回调";例外

PHP:Magento:Cron作业抛出;无效回调";例外,php,magento,cron,Php,Magento,Cron,好吧,这已经让我在过去的4个小时里发疯了。我正试图在Magento上运行cronjob。以下是我的相关目录结构: |app |code |local |MOST |Wallet |etc |config.xml |Model |Cron.php 以及我的config.xml <?xml ve

好吧,这已经让我在过去的4个小时里发疯了。我正试图在Magento上运行cronjob。以下是我的相关目录结构:

|app
   |code
      |local
         |MOST
            |Wallet
                |etc
                   |config.xml
                |Model
                   |Cron.php
以及我的config.xml

<?xml version="1.0"?>
<config>
  <modules>
    <MOST_Wallet>
      <version>0.1.0</version>
    </MOST_Wallet>
  </modules>

  <global>
    <helpers>
      <wallet>
        <class>MOST_Wallet_Helper</class>
      </wallet>
    </helpers>

    <models>
        <wallet>
            <class>MOST_Wallet_Model</class>        
        </wallet>
    </models>
  </global>

  <crontab>
        <jobs>
            <most_wallet>
                <schedule>
                    <cron_expr>* * * * *</cron_expr>
                </schedule>
                <run>
                    <model>MOST_Wallet/cron::updateWallet</model>
                </run>
            </most_wallet>
        </jobs>
    </crontab>
</config> 

0.1.0
最有帮助的人
MOST_钱包_型号
* * * * *
MOST_钱包/cron::updateWallet
文件Cron.php存在,其中包含updateWallet方法,并检查了拼写错误:)

cron没有启用,但这并不相关,因为现在我正试图通过直接打开cron.php来手动执行我的脚本。这种测试方法之所以有效,是因为所有其他cron任务似乎都工作正常

现在,cron作业失败了。经过一点搜索,我发现了抛出的错误

警告:include(Mage/MOST/Wallet/Model/Cron.php):无法打开流:第93行的/var/www/magento_test/lib/Varien/Autoload.php中没有此类文件或目录

正如你们所看到的,出于某种原因,Magento试图从Mage文件夹而不是本地文件夹加载我的Cron类。这会导致Cron观察器抛出“无效回调”异常

如果有人知道这可能是什么原因,我会非常感激

编辑:

正如Dushyant Joshi所说,配置应该是:

<config>

---
<crontab>
        <jobs>
            <most_wallet>
                <schedule>
                    <cron_expr>* * * * *</cron_expr>
                </schedule>
                <run>
                    <model>wallet/cron::updateWallet</model><!-- change here -->
                </run>
            </most_wallet>
        </jobs>
</crontab>

---
* * * * *
钱包/cron::updateWallet

这个错误也是MOST\u Wallet\u Model\u Cron类名称的输入错误。毕竟,拼写错误的确会造成最严重的错误


干杯。

按如下方式更改代码

<config>

---
    <crontab>
            <jobs>
                <most_wallet>
                    <schedule>
                        <cron_expr>* * * * *</cron_expr>
                    </schedule>
                    <run>
                        <model>wallet/cron::updateWallet</model><!-- change here -->
                    </run>
                </most_wallet>
            </jobs>
    </crontab>
</config>

---
* * * * *
钱包/cron::updateWallet

刷新缓存,然后检查

是的,我实际上是这样开始的。似乎不起作用。这就是为什么我试图改变它,看看它是否有效。不管怎样,你说的是正确的方法。这个错误原来是MOST\u Wallet\u Model\u Cron类名称的输入错误。我觉得自己很愚蠢,因为在我写这个主题之前,我检查了50次:D。谢谢你的回复。