Caches de desenvolvedor no Windows: o que npm, pip e Gradle guardam
Um projeto quase não cresceu, e mesmo assim a unidade C ganhou vários GB. Achar um diretório do npm, do pip ou do Gradle não é motivo para apagá-lo inteiro. Caches de download, dependências do projeto, saída de build e versões salvas de ferramentas fazem trabalhos diferentes, e reconstruir depende de as origens continuarem disponíveis.
Ache o local que a ferramenta realmente usa
Num terminal com as ferramentas relevantes instaladas, estes comandos mostram o local do cache do npm e a informação do cache do pip sem excluir conteúdo:
npm config get cache
python -m pip cache info
A consulta do pip usa o ambiente selecionado por python. Se você mudou os locais de cache, siga a saída. A referência de configuração do npm e a referência de cache do pip descrevem as consultas. O caminho padrão de um PC não é a configuração de todo projeto.
Distinga quatro tipos de diretório
| Tipo | Exemplos | Confira antes de remover |
|---|---|---|
| Caches de download de pacotes | cache do npm, caches HTTP e de wheel do pip | Se uma instalação posterior precisa de downloads, sobretudo offline |
| Dependências do projeto | node_modules, ambientes virtuais, vendor |
Se pacotes, lockfiles, origens e passos de instalação continuam disponíveis |
| Saída de build | dist, build, obj |
Se é conteúdo gerado e se contém algo acrescentado à mão |
| Versões de ferramenta e repositórios locais | Versões do Gradle baixadas e alguns pacotes instalados localmente | Se a próxima sincronização ou o próximo build precisa deles direto |
Reconstruir tem um custo. Acesso à rede, origens disponíveis, autenticação e requisitos offline importam. Um diretório de dependências não é um alvo universal de limpeza só porque o nome é familiar.
Um problema de cache é diferente de um problema de dependência
O cache de download do npm valida o conteúdo, e a documentação descreve buscar de novo dados corrompidos. Um erro de instalação não é motivo suficiente para esvaziar o cache. Uma falha de rede, uma versão travada indisponível ou um conflito de dependência podem continuar iguais depois.
O pip separa respostas HTTP em cache de wheels em cache, inclusive pacotes instaláveis construídos antes. A documentação de cache explica os dois. pip cache list lista wheels, não todo arquivo do diretório de cache. Ambientes virtuais isolam dependências instaladas, mas vários ambientes podem compartilhar um cache do pip. Selecionar outro python não garante um local de cache separado; leia a saída da consulta.
Um lockfile registra versões, não um backup de pacotes
Considere um projeto offline com o package-lock.json intacto, mas com node_modules e os caches de download removidos. O registro de versões permanece, mas os pacotes necessários para instalar podem estar indisponíveis. Um lockfile controla a seleção de versão; não preserva os arquivos dos pacotes nem o acesso a um registro privado.
A documentação de cache de dependências do Gradle explica por que builds offline exigem os artefatos necessários localmente. O guia de diretórios e retenção separa caches específicos de versão, dependências compartilhadas e distribuições do Wrapper. Antes de limpar um diretório .gradle grande, identifique qual categoria cresceu. Entradas antigas gerenciadas pela ferramenta e dependências de que um projeto ativo ainda precisa merecem decisões diferentes.
O que o Mole trata e o que fica com a ferramenta
O Mole para Windows lista caches reconhecidos do npm, do pip e outros. Conteúdo em uso continua protegido, e itens com dados que não se regeneram sozinhos esperam revisão. Ele não trata a pasta de dependências de todo projeto como cache genérico. Selecionar um item de limpeza não autoriza encerrar todo processo de Node.js ou Python no PC.
Os caches e wrapper\dists do Gradle ficam fora do escopo de limpeza do Mole. A sincronização do Android Studio e o próximo build podem precisar deles direto. Deixe o Gradle gerenciar a retenção, em vez de limpar uma versão só para baixá-la de novo.
Gerencie a saída do projeto conforme as instruções desse projeto. A tabela explica papéis de diretório; não significa que o Mole varre e apaga automaticamente todo caminho de projeto listado. Origem, configuração, sessões e modelos locais não viram caches só por estarem em pastas de desenvolvimento.
Verifique com o mesmo projeto depois
Mantenha uma cópia independente de qualquer coisa de que você precise, depois trate os caches selecionados. Repita a instalação ou o build original do projeto e anote quaisquer downloads necessários. Não limpe dependências, versões de ferramenta e caches de download juntos logo antes de uma apresentação ou viagem offline.
Se discos virtuais, modelos ou saídas grandes ocupam a maior parte do armazenamento, use o guia de arquivos grandes. O guia de cache separa caches comuns de dados pessoais.