最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

用于Windows的NPM包'bin'脚本

运维笔记admin13浏览0评论

用于Windows的NPM包'bin'脚本

用于Windows的NPM包'bin'脚本

Cucumber.js提供了一个命令行“binary”,它是一个包含shebang指令的简单.js文件:

#!/usr/bin/env node
var Cucumber = require('../lib/cucumber');
// ...

使用package.json配置键在"bin"中指定二进制文件:

{ "name" : "cucumber"
, "description" : "The official JavaScript implementation of Cucumber."
// ...
, "bin": { "cucumber.js": "./bin/cucumber.js" }
// ...

这一切都适用于POSIX系统。有人在Windows上运行Cucumber.js时报告了an issue。

基本上,.js文件似乎是通过Windows的JScript解释器(而不是Node.js)执行的,并且由于shebang指令而抛出语法错误。

我的问题是:建议在UNIX和Windows系统上运行的“二进制”脚本的推荐方法是什么?

谢谢。

回答如下:

Windows忽略shebang行#!/usr/bin/env node并将根据.js文件关联执行它。明确用节点调用脚本

node hello.js

PS。 Pedantry:shebangs不符合POSIX标准,但大多数* nix系统都支持它们。


如果您将项目打包为Npm,请使用package.json中的“bin”字段。然后在Windows上,Npm将在脚本旁边安装一个.cmd包装器,以便用户可以从命令行执行它

hello

对于npm创建垫片权,the script must have the shebang line #!/usr/bin/env node

发布评论

评论列表(0)

  1. 暂无评论