Converting from Zend 2.3 to Laminas getting could not be initialized error

I’m converting a project (qatools) from Zend Framework 2.3 to Laminas. I went through the conversion steps. Now I’m seeing the following error.

Uncaught Laminas\ModuleManager\Exception\RuntimeException: Module (qatools) could not be initialized

Here is what my composer file looks like.

{
    "name": "laminas/qatools",
    "description": "Webapp for HPCC QA",
    "type": "project",
    "license": "BSD-3-Clause",
    "require": {
        "php": ">=7.2.34",
        "ext-dom": "*",
		"ext-gd": "*",
        "monolog/monolog": "1.2.*",
        "phpoffice/phpspreadsheet": "1.17.*",
        "kamisama/php-resque-ex": "1.2.*",
        "kamisama/php-resque-ex-scheduler": "1.2.*",
        "colinmollenhour/credis": "1.5.*",
        "cache/simple-cache-bridge": "^1.0",
        "cache/memcache-adapter": "^1.0",
        "cache/redis-adapter": "^1.0",
        "laminas/laminas-component-installer": "^1.0 || ^2.1",
        "laminas/laminas-development-mode": "^3.2",
		"laminas/laminas-modulemanager": "^2.8", 
        "laminas/laminas-mvc": "^3.1.1"
    },
	"autoload": {
        "psr-4": {
            "qatools\\": "module/qatools/src/"
        }
    }
}

Here is module.config.php

<?php

/**
 * @see       https://github.com/laminas/laminas-mvc-skeleton for the canonical source repository
 * @copyright https://github.com/laminas/laminas-mvc-skeleton/blob/master/COPYRIGHT.md
 * @license   https://github.com/laminas/laminas-mvc-skeleton/blob/master/LICENSE.md New BSD License
 */

/**
 * List of enabled modules for this application.
 *
 * This should be an array of module namespaces used in the application.
 */
return [
    'Laminas\Router',
    'Laminas\Validator',
    'qatools',
];

Let me know if you see anything wrong with the above files. Thanks.

Please check the related path and class names. In version 3 the (service) names are case sensitive.

1 Like

In addition to the @froschdesign answer I would like to ask have you run the below command as well?

composer dump-autoload

Thanks!

I would migrate to ZF3 first. See the blog post Migrating ZF2 to ZF3
Then migrate to Laminas.