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.