为何我的Node.js CLI无法运行index.js文件?
解决Node.js CLI全局命令无法执行脚本的问题
问题出在两个核心点:脚本缺少shebang声明,以及未设置执行权限。按以下步骤修复:
1. 给脚本添加shebang行
在bin/index.js的最顶端添加一行声明,告诉系统用Node.js执行这个文件:
#!/usr/bin/env node import chalk from "chalk"; import boxen from "boxen"; const greeting = chalk.white.bold("Hello World This is the first Program!"); const boxenOptions = { padding: 1, margin: 1, borderStyle: "round", borderColor: "green", backgroundColor: "#555555" }; const msgBox = boxen( greeting, boxenOptions ); console.log(msgBox);
2. 给脚本添加执行权限
在项目根目录运行命令,赋予index.js可执行权限:
chmod +x bin/index.js
3. 重新全局安装包
先卸载已安装的全局包,再重新安装:
npm uninstall -g mycli npm install -g .
现在运行mycli命令,就能正常输出带框的问候语了。
内容的提问来源于stack exchange,提问作者Nolan Knight
相关产品推荐
相关产品推荐

