Estou recebendo o seguinte erro em um site do Drupal 8.
O módulo a seguir está ausente no sistema de arquivos
Parece que um módulo personalizado foi instalado e excluído sem desinstalá-lo.
Como posso corrigir este erro?
Estou recebendo o seguinte erro em um site do Drupal 8.
O módulo a seguir está ausente no sistema de arquivos
Parece que um módulo personalizado foi instalado e excluído sem desinstalá-lo.
Como posso corrigir este erro?
Respostas:
Se você possui o Drupal Console, uma maneira rápida de corrigir isso é gerar um módulo com o mesmo nome de máquina e desinstalá-lo.
$ drupal generate:module
Em seguida, digite o nome da máquina no prompt apropriado e aceite os padrões para todo o resto.
$ drush pm-uninstall
Em seguida, você pode excluir o módulo recém-gerado do sistema de arquivos e continuar com o seu dia.
(NB: pode ser necessário manter o módulo gerado, caso contrário, o erro retornará. Nesse caso, se você precisar instalar um módulo contrib com o mesmo nome, remova o módulo gerado após adicionar o módulo contrib. Em seguida, limpe o cache. )
Supondo que você excluiu um módulo personalizado sem importância que não precisa de nenhuma rotina de desinstalação para ser acionado, você pode usar o seguinte comando Drush.
Drupal 7
drush sql-query "DELETE from system where type = 'module' AND name = 'MYMODULE';"
Drupal 8
drush sql-query "DELETE FROM key_value WHERE collection='system.schema' AND name='MYMODULE';"
Consulte Como corrigir as mensagens de aviso "O módulo a seguir está ausente no sistema de arquivos ..." para obter mais informações e alternativas.
Agora, com o módulo Configuration Management, a configuração dos módulos é armazenada no arquivo core.extension.yml.
Vá para editar o arquivo e tente encontrar o módulo ausente do sistema de arquivos, exclua a linha e importe a config ( drush cim
).
Se isso não funcionar, mas você encontrou o módulo, crie o módulo novamente (apenas a pasta e um arquivo .info.yml válido) e execute o drush cim
comando novamente . Isso desinstalará o módulo.
A maneira que eu consertei foi usando drush e compositor. Obtenha o módulo com exigir, instalar e desinstalar com drush e remova com o compositor.
composer require drupal/missing_module
drush en missing_module
drush pmu missing_module
composer remove drupal/missing_module
! O passo com drush en
provavelmente não é necessário