# Cache degli sviluppatori in Windows: npm, pip e Gradle

Un progetto è cresciuto appena, eppure l’unità C ha guadagnato diversi GB. Trovare una cartella npm, pip o Gradle non è un motivo per eliminarla intera. Cache di download, dipendenze di progetto, output di build e versioni degli strumenti salvate fanno lavori diversi, e la ricostruzione dipende dal fatto che le loro fonti restino disponibili.

## Trova la posizione che lo strumento usa davvero

In un terminale con gli strumenti pertinenti installati, questi comandi mostrano la posizione della cache di npm e le informazioni sulla cache di pip senza eliminare contenuto:

```powershell
npm config get cache
python -m pip cache info
```

La query di pip usa l’ambiente selezionato da `python`. Se hai cambiato le posizioni delle cache, segui l’output. Il [riferimento di configurazione di npm](https://docs.npmjs.com/cli/v11/commands/npm-config/) e il [riferimento della cache di pip](https://pip.pypa.io/en/stable/cli/pip_cache/) descrivono le query. Il percorso predefinito di un PC non è la configurazione di ogni progetto.

## Distingui quattro tipi di cartelle

| Tipo | Esempi | Controlla prima della rimozione |
| --- | --- | --- |
| Cache di download dei pacchetti | Cache di npm, cache HTTP e wheel di pip | Se un’installazione successiva ha bisogno di download, soprattutto offline |
| Dipendenze di progetto | `node_modules`, ambienti virtuali, `vendor` | Se restano disponibili pacchetti, lockfile, sorgenti e passi di installazione |
| Output di build | `dist`, `build`, `obj` | Se è contenuto generato e contiene qualcosa aggiunto a mano |
| Versioni degli strumenti e repository locali | Versioni di Gradle scaricate e alcuni pacchetti installati in locale | Se la sincronizzazione o la build successiva ne ha bisogno direttamente |

Ricostruire ha un costo. Contano accesso alla rete, fonti disponibili, autenticazione e requisiti offline. Una cartella di dipendenze non è un bersaglio universale di pulizia solo perché il nome è familiare.

## Un problema di cache è diverso da un problema di dipendenze

La cache di download di npm convalida il contenuto, e la sua [documentazione](https://docs.npmjs.com/cli/v11/commands/npm-cache/) descrive il nuovo recupero dei dati corrotti. Un errore di installazione non basta a svuotare la cache. Un guasto di rete, una versione bloccata non disponibile o un conflitto di dipendenze possono restare invariati dopo.

pip separa le risposte HTTP in cache dalle wheel in cache, inclusi i pacchetti installabili costruiti in precedenza. La sua [documentazione sulla cache](https://pip.pypa.io/en/stable/topics/caching/) spiega entrambe. `pip cache list` elenca le wheel, non ogni file della cartella della cache. Gli ambienti virtuali isolano le dipendenze installate, ma più ambienti possono condividere una cache di pip. Selezionare un `python` diverso non garantisce una posizione di cache separata; leggi l’output della query.

## Un lockfile registra le versioni, non un backup dei pacchetti

Considera un progetto offline con `package-lock.json` intatto ma con `node_modules` e le cache di download rimosse. Il registro delle versioni resta, ma i pacchetti necessari all’installazione possono non essere disponibili. Un lockfile controlla la scelta delle versioni; non conserva i file dei pacchetti né l’accesso a un registro privato.

La [documentazione della cache delle dipendenze di Gradle](https://docs.gradle.org/current/userguide/dependency_caching.html) spiega perché le build offline richiedono in locale gli artefatti necessari. La sua [guida a cartelle e conservazione](https://docs.gradle.org/current/userguide/directory_layout.html) separa cache specifiche della versione, dipendenze condivise e distribuzioni del Wrapper. Prima di svuotare una cartella `.gradle` grande, identifica quale categoria è cresciuta. Le voci vecchie gestite dallo strumento e le dipendenze di cui un progetto attivo ha ancora bisogno meritano decisioni diverse.

<figure class="blog-diagram">
  <picture>
    <source media="(max-width: 900px)" srcset="/img/blog/windows-windows-developer-caches-en-mobile.webp" type="image/webp" width="768" height="1500">
    <img src="/img/blog/windows-windows-developer-caches-en.webp" width="1360" height="454" loading="lazy" alt="Lo spazio di sviluppo ha ruoli diversi">
  </picture>
  <figcaption>I quattro ruoli delle cartelle hanno costi di ricostruzione diversi. Un lockfile registra le versioni invece di conservare pacchetti o toolchain.</figcaption>
</figure>

## Cosa gestisce Mole e cosa resta allo strumento

Mole per Windows elenca le cache riconosciute di npm, pip e altre. Il contenuto in uso resta protetto, e le voci con dati che non si rigenerano da soli attendono la revisione. Non tratta la cartella delle dipendenze di ogni progetto come una cache generica. Selezionare una voce di pulizia non autorizza a chiudere ogni processo Node.js o Python del PC.

`caches` e `wrapper\dists` di Gradle restano fuori dall’ambito di pulizia di Mole. La sincronizzazione di Android Studio e la build successiva possono averne bisogno direttamente. Lascia che Gradle gestisca la conservazione invece di svuotare una versione solo per scaricarla di nuovo.

Gestisci l’output di progetto secondo le istruzioni di quel progetto. La tabella spiega i ruoli delle cartelle; non significa che Mole analizzi ed elimini automaticamente ogni percorso di progetto elencato. Sorgenti, configurazione, sessioni e modelli locali non diventano cache solo perché stanno in cartelle di sviluppo.

## Verifica dopo con lo stesso progetto

Tieni una copia indipendente di ciò che ti serve, poi tratta le cache selezionate. Ripeti l’installazione o la build originale del progetto e annota i download richiesti. Non svuotare insieme dipendenze, versioni degli strumenti e cache di download appena prima di una presentazione o di un viaggio offline.

Se dischi virtuali, modelli o output grandi occupano la maggior parte dello spazio, usa la [guida ai file grandi](/it/windows/blog/find-large-files-on-windows). La [guida alle cache](/it/windows/blog/windows-cache-cleanup) separa le cache ordinarie dai dati personali.


Canonical: https://mole.fit/it/windows/blog/windows-developer-caches
