| 123456789101112131415161718192021222324252627282930313233343536 |
- #!/usr/bin/env node
- import fs from 'fs';
- import path from 'path';
- import { execSync } from 'child_process';
- import { fileURLToPath } from 'url';
- const __filename = fileURLToPath(import.meta.url);
- const __dirname = path.dirname(__filename);
- // 读取 .nvmrc 文件获取所需的 Node.js 版本
- const requiredVersion = fs.readFileSync(path.join(__dirname, '..', '.nvmrc'), 'utf8').trim();
- const currentVersion = process.version.slice(1); // 移除版本号前的 'v'
- console.log(`检查 Node.js 版本...`);
- console.log(`当前版本: ${currentVersion}`);
- console.log(`所需版本: ${requiredVersion}`);
- // 比较版本号的主要部分
- const currentMajor = parseInt(currentVersion.split('.')[0], 10);
- const requiredMajor = parseInt(requiredVersion.split('.')[0], 10);
- if (currentMajor !== requiredMajor) {
- console.error(`\n错误: Node.js 版本不匹配!`);
- console.error(`本项目需要 Node.js ${requiredVersion}`);
- console.error(`当前使用的是 Node.js ${currentVersion}`);
-
- console.error(`\n请尝试以下方法之一:`);
- console.error(`1. 如果已安装 nvm: 运行 'nvm use ${requiredVersion}'`);
- console.error(`2. 安装所需版本: 'nvm install ${requiredVersion}'`);
- console.error(`3. 从 https://nodejs.org/ 下载并安装 Node.js ${requiredVersion}`);
-
- process.exit(1);
- }
- console.log(`Node.js 版本检查通过!`);
|