Eu encontrei esse erro no desenvolvimento por causa de um link simbólico quebrado.
Eu criei um arquivo no view/frontend/web
diretório de um módulo que no developer
modo foi implantado no pub/static
diretório usando um link simbólico que apontava para o diretório do módulo em que o arquivo original está armazenado.
Em algum momento do desenvolvimento, removi o arquivo do meu módulo, mas o link simbólico ainda existia ao pub/static
apontar para um arquivo que não existia mais. Espero que esse também seja o caso se eu tivesse renomeado um dos arquivos.
Se um site está no production
modo e já foi bin/magento setup:static-content:deploy
executado, ele realmente copia os arquivos para o pub/static
diretório em vez de criar links simbólicos.
Para encontrar esse link simbólico quebrado, executei um comando do shell
find -L . -type l
A remoção do link simbólico interrompido resolveu o problema (por exemplo, usando find -L . -type l -exec rm {} \;
).