diff --git a/core/lib/Drupal/Core/Extension/ModuleInstaller.php b/core/lib/Drupal/Core/Extension/ModuleInstaller.php
index a8124d5..b3a9b80 100644
--- a/core/lib/Drupal/Core/Extension/ModuleInstaller.php
+++ b/core/lib/Drupal/Core/Extension/ModuleInstaller.php
@@ -289,7 +289,9 @@ public function install(array $module_list, $enable_dependencies = TRUE) {
 
     // If any modules were newly installed, invoke hook_modules_installed().
     if (!empty($modules_installed)) {
-      \Drupal::service('router.builder')->setRebuildNeeded();
+      $builder = \Drupal::service('router.builder');
+      $builder->setRebuildNeeded();
+      $builder->rebuildIfNeeded();
       $this->moduleHandler->invokeAll('modules_installed', array($modules_installed));
     }
 
