简体   繁体   中英

How to clear Nx cache

I have an Nx monorepo ( https://nx.dev ). It has a folder with Nx cache ( ./node_modules/.cache/nx/ ). Its size for now is over 3GB.

Is there a command for clear this cache?

This works in the latest version as of today (February 12, 2022). I am uncertain why this is no longer in the CLI documentation despite evidence of it being there in the past: https://nx.dev/cli/clear-cache

nx clear-cache

nx reset clears the cache.

Docs on nx reset : https://nx.dev/nx/reset#reset

Docs on the cache here: https://nx.dev/using-nx/caching#local-computation-caching

The above answer nx clear-cache is for the jest cache. I would comment but no rep:)

I have implemented such a solution, but do not find it convenient. Perhaps NX has a command to clear its cache, but I did not find it.

package.json

  "scripts": {
    "nx": "nx",
    "postnx": "node checkAndClearCache.js",
  ...

checkAndClearCache.js

const fs = require('fs');
const rimraf = require('rimraf');
const getSize = require('get-folder-size');

const cachePath = 'node_modules/.cache/nx';
const maxCacheMb = 2048;

if (fs.existsSync(cachePath)) {
  getSize(cachePath, (err, size) => {
    if (err) {
      throw err;
    }

    const MBSize = (size / 1024 / 1024).toFixed(2);

    console.log(`*** NX cache size is ${MBSize} Megabytes`);
    if (MBSize > maxCacheMb) {
      console.log('*** CLEAR NX CACHE ***');
      rimraf.sync(cachePath);
    }
  });
}

Just delete the whole 'nx' cache folder:

rm -rf ./node_modules/.cache/nx

There is not really any command to delete the Nx cache except to skip it . If size of the directory is your problem then may be running your node script as a cron job might be an option. In case, location of the directory is your concern then you also configure it and move it outside node_modules like this .

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM