clean-cache.js 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. const fs = require('fs');
  2. const path = require('path');
  3. const CACHE_DIR = path.join(__dirname, '../node_modules/.cache');
  4. console.log('🧹 清理 Webpack 缓存...');
  5. console.log(` 缓存路径: ${CACHE_DIR}`);
  6. if (fs.existsSync(CACHE_DIR)) {
  7. try {
  8. // 获取缓存目录大小信息(可选)
  9. let totalSize = 0;
  10. function getDirectorySize(dir) {
  11. const files = fs.readdirSync(dir, { withFileTypes: true });
  12. for (const file of files) {
  13. const filePath = path.join(dir, file.name);
  14. if (file.isDirectory()) {
  15. getDirectorySize(filePath);
  16. } else {
  17. try {
  18. const stats = fs.statSync(filePath);
  19. totalSize += stats.size;
  20. } catch (err) {
  21. // 忽略单个文件错误
  22. }
  23. }
  24. }
  25. }
  26. getDirectorySize(CACHE_DIR);
  27. const sizeMB = (totalSize / 1024 / 1024).toFixed(2);
  28. console.log(` 缓存大小: ${sizeMB} MB`);
  29. // 删除缓存目录
  30. fs.rmSync(CACHE_DIR, { recursive: true, force: true });
  31. console.log('✅ 缓存已清理');
  32. } catch (err) {
  33. console.error('❌ 清理失败:', err.message);
  34. process.exit(1);
  35. }
  36. } else {
  37. console.log('ℹ️ 没有缓存需要清理');
  38. }