Here is the simplified error:
InvalidArgumentException: Class “DrupalprepcartControllerPrepCartController” does not exist. in DrupalCoreDependencyInjectionClassResolver->getInstanceFromDefinition() (line 24 of core/lib/Drupal/Core/DependencyInjection/ClassResolver.php).
Full Stack Trace:
The website encountered an unexpected error. Please try again later.
InvalidArgumentException: Class “DrupalprepcartControllerPrepCartController” does not exist. in DrupalCoreDependencyInjectionClassResolver->getInstanceFromDefinition() (line 24 of core/lib/Drupal/Core/DependencyInjection/ClassResolver.php).
DrupalCoreControllerControllerResolver->createController(‘DrupalprepcartControllerPrepCartController::content’) (Line: 74)
DrupalCoreControllerControllerResolver->getControllerFromDefinition(‘DrupalprepcartControllerPrepCartController::content’, ‘/cart’) (Line: 91)
DrupalCoreControllerControllerResolver->getController(Object) (Line: 132)
SymfonyComponentHttpKernelHttpKernel->handleRaw(Object, 1) (Line: 64)
SymfonyComponentHttpKernelHttpKernel->handle(Object, 1, 1) (Line: 57)
DrupalCoreStackMiddlewareSession->handle(Object, 1, 1) (Line: 47)
DrupalCoreStackMiddlewareKernelPreHandle->handle(Object, 1, 1) (Line: 98)
Drupalpage_cacheStackMiddlewarePageCache->pass(Object, 1, 1) (Line: 77)
Drupalpage_cacheStackMiddlewarePageCache->handle(Object, 1, 1) (Line: 47)
DrupalCoreStackMiddlewareReverseProxyMiddleware->handle(Object, 1, 1) (Line: 50)
DrupalCoreStackMiddlewareNegotiationMiddleware->handle(Object, 1, 1) (Line: 23)
StackStackedHttpKernel->handle(Object, 1, 1) (Line: 628)
DrupalCoreDrupalKernel->handle(Object) (Line: 19)
Relevant information: Drupal Core 8.1.8 (I know 8.2 is out but this shouldn’t matter I believe – we are pinned to this version due to Lightning)
And here is the relevant files involved:
PrepCartController.php
<?php
/**
* @file
* Contains DrupalprepcartControllerPrepCartController.
*/
namespace DrupalprepcartController;
use DrupalCoreControllerControllerBase;
class PrepCartController extends ControllerBase {
public function content() {
return array(
'#type' => 'markup',
'#markup' => $this->t('Hello, IHM!'),
);
}
};
To make life easier this is the directory structure:
drwxr-xr-x 170B Oct 18 07:05 ./
-rw-r--r-- 222B Oct 18 06:36 ./prepcart.info.yml
-rw-r--r-- 195B Oct 18 07:05 ./prepcart.routing.yml
drwxr-xr-x 102B Oct 18 06:53 ./src/
drwxr-xr-x 102B Oct 18 06:54 ./src/Controller/
-rw-r--r-- 349B Oct 18 06:54 ./src/Controller/PrepCartController.php
For some reason the module won’t show on the modules page but I can interact with it fine on the CLI using drush?
Trust me when I say I have been ALL over Google and Stack for this. Major love to whomever can help me here.