我的软件包有以下configuration:
{ "name": "put-version", "version": "1.0.7", "description": "...", "main": "index.js", "scripts": { "test": "node index.js test.html", "compile": "babel src/index.js -o index.js", "start": "node index.js" }, "engines": { "node": ">=4" }, "bin": "index.js", ... }
当人们安装这个软件包时,他们应该能够运行put-version
。 但是,在Windows上运行脚本似乎是由Microsoft JScript而不是Node.js执行的。 我已经阅读了这个: Windows的NPM软件包“bin”脚本 – 但我没有find解决scheme。
我使用Node.js 8.9.1和NPM 5.5.1运行最新版本的Windows 10。
我找到了解决办法:我必须把它放在脚本的顶部(index.js):
#!/usr/bin/env node
所以文件的开头看起来像这样:
#!/usr/bin/env node "use strict"; var fs = require("fs"); var path = require("path"); var cheerio = require("cheerio"); // ...