Редактировать:
Возникла странная проблема, из-за которой файл API был переименован в строчную букву «b» на сервере, поэтому класс не был найден.
Оригинал ниже
Я сделал плагин для mautic, чтобы проверять электронную почту для сохраненных контактов в mautic, используя NeverBounce API. У меня есть класс интеграции, который получает все последние непроверенные контакты и отправляет их в API, однако плагин прекрасно работает локально, однако при установке плагина в промежуточной версии и попытке запустить команду, которая не удалась при поиске класса NeverBounceApi.
[Symfony\Component\Debug\Exception\ClassNotFoundException]
Attempted to load class "NeverBounceApi" from namespace "MauticPlugin\THNeverBounceBundle\Api".
Did you forget a "use" statement for another namespace?
Я очистил кеш, запустил дамп-автозагрузку composer и проверил разрешения для файлов плагинов, все вроде в порядке. Структура папок выглядит следующим образом:
/PluginBundle
..
--/Integrations
----/NeverBounceIntegration.php
--/Api
----/NeverBounceApi.php
..
NeverBounceIntegration.php
<?php
namespace MauticPlugin\THNeverBounceBundle\Integration;
....
use MauticPlugin\THNeverBounceBundle\Api\NeverBounceApi;
class NeverBounceIntegration extends AbstractIntegration
{
....
public function getApiHelper()
{
if (empty($this->helper)) {
$this->helper = new NeverBounceApi($this);
}
return $this->helper;
}
....
public function checkContacts()
{
...
// it fails when calling the Api class
$response = $this->getApiHelper()->createJob($list);
}
}
NeverBounceApi.php
<?php
namespace MauticPlugin\THNeverBounceBundle\Api;
use Mautic\PluginBundle\Integration\AbstractIntegration;
...
class NeverBounceApi
{
...
}
Попробуйте очистить кеш вручную, после того, как откроете CLI на вашем сервере и попробуйте запустить:
composer dump-autoload
Вероятно, у вас есть проблемы с кешем или классом загрузки от композитора
Возникла странная проблема, из-за которой файл API был переименован в строчную букву «b» на сервере, поэтому класс не был найден.