Magento 2ですべてのキャッシュを削除した後のエラー


10

すべてのキャッシュを削除すると

rm -rf var/cache/* var/page_cache/* var/view_preprocessed/* var/generation/*

エラーが発生しました

Warning: ltrim() expects parameter 1 to be string, object given in vendor\magento\framework\Code\Generator\EntityAbstract.php on line 152

Notice: Uninitialized string offset: 0 in vendor\magento\framework\Autoload\ClassLoaderWrapper.php on line 81

Notice: Uninitialized string offset: 0 in vendor\composer\ClassLoader.php on line 317

Notice: Uninitialized string offset: 0 in vendor\composer\ClassLoader.php on line 349
exception 'RuntimeException' with message 'Source class "" for   "Magento\Framework\App\Response\Http\Interceptor" generation does not exist.'
in vendor\magento\framework\Code\Generator.php:185 Stack trace:     #0  
vendor\magento\framework\Code\Generator.php(112): Magento\Framework\Code\Generator->tryToLoadSourceClass('Magento\\Framewo...', Object(Magento\Framework\Interception\Code\Generator\Interceptor)) #1 
vendor\magento\framework\Code\Generator\Autoloader.php(35): Magento\Framework\Code\Generator->generateClass('Magento\\Framewo...') #2 [internal function]: Magento\Framework\Code\Generator\Autoloader->load('Magento\\Framewo...') #3 
vendor\magento\framework\ObjectManager\Factory\AbstractFactory.php(93): spl_autoload_call('Magento\\Framewo...') #4 
vendor\magento\framework\ObjectManager\Factory\Compiled.php(88): Magento\Framework\ObjectManager\Factory\AbstractFactory->createObject('Magento\\Framewo...', Array) #5 
vendor\magento\framework\ObjectManager\Factory\Compiled.php(130): Magento\Framework\ObjectManager\Factory\Compiled->create('Magento\\Framewo...') #6 
vendor\magento\framework\ObjectManager\Factory\Compiled.php(67): Magento\Framework\ObjectManager\Factory\Compiled->get('Magento\\Framewo...') #7     
vendor\magento\framework\ObjectManager\ObjectManager.php(57): Magento\Framework\ObjectManager\Factory\Compiled->create('Magento\\Framewo...', Array) #8 
vendor\magento\framework\App\Bootstrap.php(233): Magento\Framework\ObjectManager\ObjectManager->create('Magento\\Framewo...', Array) #9 
index.php(38): Magento\Framework\App\Bootstrap->createApplication('Magento\\Framewo...') #10 {main}

この問題の背後にある理由は何ですか?

この問題の解決策を教えてください。

回答:


19

まず、varフォルダーを削除する必要があります。

コマンドを実行し、 php bin/magento setup:di:compile

varフォルダーを削除した後、varフォルダーに権限を付与します。

chmod -R 775 var/generation/ var/cache/ var/full_page/

もう一度チェック。


4
php bin / magento setup:di:compile
sagar sapkota '25年

私は同じ問題を抱えており、php bin / magento setup:di:compilコマンドを使用して問題も解決しました
Pandurang

6

コンパイル後も問題が解決しない場合は、通常、var / diフォルダーとコンテンツを削除するとうまくいきます。実際にこれが起こる原因はわかりませんが、私は頻繁にそれに遭遇し、知りたいと思っています。


1
なぜこれが起こっているのかをなんとかして見つけましたか?
スティービーG

1

私は同じ問題を抱えていました、私はパーミッションで変数ディレクトリ777を与えることによってそれを修正しました

cd magento root folder
sudo chmod 777 -R var/

Magentoがdiフォルダーを作成できるようになりました。


0

以下の同じ問題も私のために働いた

cd <your Magento install dir> 
find var generated vendor pub/static pub/media app/etc -type f -exec chmod g+w {} +
find var generated vendor pub/static pub/media app/etc -type d -exec chmod g+ws {} +
chown -R :www-data .   // I used LEMP/LAMP
chmod u+x bin/magento

php bin/magento setup:di:compile   // you can skip if know compile status
php bin/magento setup:static-content:deploy -f en_CA // if need your language code
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.