Pim-community-dev: Update 3.0 to 3.1 error

Created on 11 Sep 2019  ·  7Comments  ·  Source: akeneo/pim-community-dev

Hello, I am trying to update version 3.0CE to 3.1CE.

When I run the command:

php bin/console cache:clear --env=prod

I have the following error

image

Mysql Server version: 5.7.26
Apache/2.4.25 (Debian)
PHP 7.2.22-1
nodejs v10.16.0
Elasticsearch 6.8.1

Most helpful comment

I found the cause of the mistake. Before launching

bin / console cache: clear --env = prod

You must empty the directory var/cache/_[prod, dev]_. Astonishing to have to delete the cache to launch the command that purges the cache ...;)

All 7 comments

Hi Philippe,

Did you follow the file UPGRADE.md (at the root of the PIM) to upgrade your PIM?
https://github.com/akeneo/pim-community-dev/blob/3.1/UPGRADE.md
What is the step that raises you this error?

Regards,

Hi Doodoune,

I used this readme well to follow the update procedure.

This error occurs in step 4 of the "Migrate your custom code" paragraph. But by rereading the procedure I realize that it is in the case where I customized my installation of Akeneo which is not my case. I am on a standard installation.

But if I do not realize this step and I stop at step 10 of "Migrate your standard project" I have a blank page and in the logs apache I :

Got error 'PHP message: PHP Fatal error: Uncaught Symfony\\Component\\Debug\\Exception\\ClassNotFoundException: Attempted to load class "VoterInitializerListener" from namespace "Knp\\Bundle\\MenuBundle\\EventListener".\nDid you forget a "use" statement for another namespace? in /var/www/html/pim-community-standard/var/cache/prod/ContainerJjy8q4b/appProdProjectContainer.php:5602\nStack trace:\n#0 /var/www/html/pim-community-standard/var/cache/prod/ContainerJjy8q4b/appProdProjectContainer.php(4668): ContainerJjy8q4b\\appProdProjectContainer->getKnpMenu_Listener_VotersService()\n#1 /var/www/html/pim-community-standard/vendor/symfony/symfony/src/Symfony/Component/EventDispatcher/EventDispatcher.php(229): ContainerJjy8q4b\\appProdProjectContainer->ContainerJjy8q4b\\{closure}()\n#2 /var/www/html/pim-community-standard/vendor/symfony/symfony/src/Symfony/Component/EventDispatcher/EventDispatcher.php(61): Symfony\\Component\\EventDispatcher\\EventDispatcher->sortListeners('kernel.request')\n#3 /var/www/html/pim-community-standard/vendor/symf...\n'

Did you do a composer update? Maybe your KnpBundle is not up to date.

I've update composer to 1.9.0 and i've the identical error

Got error 'PHP message: PHP Fatal error: Uncaught Symfony\\Component\\Debug\\Exception\\ClassNotFoundException: Attempted to load class "VoterInitializerListener" from namespace "Knp\\Bundle\\MenuBundle\\EventListener".\nDid you forget a "use" statement for another namespace? in /var/www/html/pim-community-standard/var/cache/prod/ContainerJjy8q4b/appProdProjectContainer.php:5602\nStack trace:\n#0 /var/www/html/pim-community-standard/var/cache/prod/ContainerJjy8q4b/appProdProjectContainer.php(4668): ContainerJjy8q4b\\appProdProjectContainer->getKnpMenu_Listener_VotersService()\n#1 /var/www/html/pim-community-standard/vendor/symfony/symfony/src/Symfony/Component/EventDispatcher/EventDispatcher.php(229): ContainerJjy8q4b\\appProdProjectContainer->ContainerJjy8q4b\\{closure}()\n#2 /var/www/html/pim-community-standard/vendor/symfony/symfony/src/Symfony/Component/EventDispatcher/EventDispatcher.php(61): Symfony\\Component\\EventDispatcher\\EventDispatcher->sortListeners('kernel.request')\n#3 /var/www/html/pim-community-standard/vendor/symf...\n'

Report composer

Do not run Composer as root/super user! See https://getcomposer.org/root for details
Loading composer repositories with package information
Updating dependencies (including require-dev)
Package operations: 3 installs, 8 updates, 11 removals
  - Removing symfony/assetic-bundle (v2.8.2)
  - Removing phpoption/phpoption (1.5.0)
  - Removing phpcollection/phpcollection (0.5.0)
  - Removing leafo/lessphp (v0.5.0)
  - Removing kriswallsmith/assetic (v1.4.0)
  - Removing knplabs/knp-menu-bundle (2.1.3)
  - Removing knplabs/knp-menu (2.2.0)
  - Removing jms/serializer-bundle (2.0.0)
  - Removing jms/serializer (1.8.1)
  - Removing jms/parser-lib (1.0.0)
  - Removing jms/metadata (1.7.0)
  - Updating doctrine/cache (v1.6.1 => v1.8.0): Loading from cache
  - Updating doctrine/annotations (v1.3.1 => v1.6.0): Loading from cache
  - Installing doctrine/reflection (v1.0.0): Loading from cache
  - Installing doctrine/event-manager (v1.0.0): Loading from cache
  - Installing doctrine/persistence (v1.1.0): Loading from cache
  - Updating doctrine/common (v2.7.2 => v2.10.0): Loading from cache
  - Updating doctrine/instantiator (1.0.5 => 1.1.0): Loading from cache
  - Updating doctrine/dbal (v2.5.13 => v2.7.2): Loading from cache
  - Updating doctrine/orm (v2.5.14 => v2.6.3): Loading from cache
  - Updating doctrine/doctrine-bundle (1.6.7 => 1.10.2): Loading from cache
  - Updating akeneo/pim-community-dev (v3.0.40 => v3.1.18): Loading from cache
Writing lock file
Generating autoload files

What about running composer thanks now?
This will spread some 💖  by sending a ★  to 82 GitHub repositories of your fellow package maintainers.

ocramius/package-versions:  Generating version class...
ocramius/package-versions: ...done generating version class
> Incenteev\ParameterHandler\ScriptHandler::buildParameters
Updating the "app/config/parameters.yml" file
> Sensio\Bundle\DistributionBundle\Composer\ScriptHandler::buildBootstrap
> Sensio\Bundle\DistributionBundle\Composer\ScriptHandler::clearCache

 // Clearing the cache for the dev environment with debug                       
 // true                                                                        


 [OK] Cache for the "dev" environment (debug=true) was successfully cleared.    


> Sensio\Bundle\DistributionBundle\Composer\ScriptHandler::installAssets

 Trying to install assets as relative symbolic links.

 --- --------------------------- ------------------ 
      Bundle                      Method / Error    
 --- --------------------------- ------------------ 
  ✔   FOSJsRoutingBundle          relative symlink  
  ✔   OroConfigBundle             relative symlink  
  ✔   PimDataGridBundle           relative symlink  
  ✔   PimUserBundle               relative symlink  
  ✔   AkeneoPimEnrichmentBundle   relative symlink  
  ✔   AkeneoPimStructureBundle    relative symlink  
  ✔   PimDashboardBundle          relative symlink  
  ✔   PimAnalyticsBundle          relative symlink  
  ✔   PimImportExportBundle       relative symlink  
  ✔   PimNotificationBundle       relative symlink  
  ✔   PimUIBundle                 relative symlink  
 --- --------------------------- ------------------ 


 [OK] All assets were successfully installed.                                   


> Sensio\Bundle\DistributionBundle\Composer\ScriptHandler::installRequirementsFile
> Sensio\Bundle\DistributionBundle\Composer\ScriptHandler::removeSymfonyStandardFiles
> Sensio\Bundle\DistributionBundle\Composer\ScriptHandler::prepareDeploymentTarget
> php bin/console --ansi fos:js-routing:dump --target=web/js/routes.js
Dumping exposed routes.

[file+] web/js/routes.js
> php bin/console --ansi pim:installer:assets
Akeneo PIM assets
Dumping exposed routes.

[file+] /var/www/html/pim-community-standard/app/../web/js/routes.js

 Installing assets as hard copies.

 --- --------------------------- ---------------- 
      Bundle                      Method / Error  
 --- --------------------------- ---------------- 
  ✔   FOSJsRoutingBundle          copy            
  ✔   OroConfigBundle             copy            
  ✔   PimDataGridBundle           copy            
  ✔   PimUserBundle               copy            
  ✔   AkeneoPimEnrichmentBundle   copy            
  ✔   AkeneoPimStructureBundle    copy            
  ✔   PimDashboardBundle          copy            
  ✔   PimAnalyticsBundle          copy            
  ✔   PimImportExportBundle       copy            
  ✔   PimNotificationBundle       copy            
  ✔   PimUIBundle                 copy            
 --- --------------------------- ---------------- 

 ! [NOTE] Some assets were installed via copy. If you make changes to these     
 !        assets you have to run this command again.                            


 [OK] All assets were successfully installed.                                   


Generating require.js main config
12:11:45 [file+] en_US.js
12:11:45 [file+] ca_ES.js
12:11:45 [file+] da_DK.js
12:11:45 [file+] de_DE.js
12:11:45 [file+] es_ES.js
12:11:45 [file+] fi_FI.js
12:11:45 [file+] fr_FR.js
12:11:45 [file+] hr_HR.js
12:11:46 [file+] it_IT.js
12:11:46 [file+] ja_JP.js
12:11:46 [file+] nl_NL.js
12:11:46 [file+] pl_PL.js
12:11:46 [file+] pt_BR.js
12:11:46 [file+] pt_PT.js
12:11:46 [file+] ru_RU.js
12:11:46 [file+] sv_SE.js
12:11:46 [file+] tl_PH.js
12:11:46 [file+] zh_CN.js
12:11:46 [file+] sv_SE.js
12:11:46 [file+] en_NZ.js
> Akeneo\Platform\Bundle\InstallerBundle\ComposerScripts::copyUpgradesFiles
Copying migration folder from Akeneo PIM dependency to standard version.
Done.
yarn install v1.17.3
[1/4] Resolving packages...
[2/4] Fetching packages...
info [email protected]: The platform "linux" is incompatible with this module.
info "[email protected]" is an optional dependency and failed compatibility check. Excluding it from installation.
[3/4] Linking dependencies...
[4/4] Building fresh packages...
success Saved lockfile.
Done in 16.88s.

After several attempts I finally succeeded.

What is not clear in the doc is: should we run the following commands:

bin/console cache:clear --env=prod
bin/console pim:installer:assets --clean --env=prod
yarn run less
yarn run webpack

In doubt I launched them, I did not encounter any problem and now I even have access to my updated install.

I found the cause of the mistake. Before launching

bin / console cache: clear --env = prod

You must empty the directory var/cache/_[prod, dev]_. Astonishing to have to delete the cache to launch the command that purges the cache ...;)

Glad that you solved your issue.
I close this issue. Feel free to reopen it if needed.

Was this page helpful?
0 / 5 - 0 ratings