Javascript 创建一个npm控制台应用程序;“可安装”;(如约曼、大口大口或咕噜声等)
我对NPM的所有东西都很陌生,但是,我想创建一个新的包,它应该能够作为控制台应用程序运行(比如gulp和grunt) 所以基本上我想做的是让跑步成为可能Javascript 创建一个npm控制台应用程序;“可安装”;(如约曼、大口大口或咕噜声等),javascript,node.js,console,npm,package,Javascript,Node.js,Console,Npm,Package,我对NPM的所有东西都很陌生,但是,我想创建一个新的包,它应该能够作为控制台应用程序运行(比如gulp和grunt) 所以基本上我想做的是让跑步成为可能 npm install -g mypackage 然后 mypackage 这将启动控制台应用程序 我一直在使用npminit初始化我的新包,我还创建了入口点(在我的例子中是app.js),node app.js运行良好 我还使用了npmpack来创建一个包和npm安装{path to my.tgz} 这是我的app.js: console
npm install -g mypackage
然后
mypackage
这将启动控制台应用程序
我一直在使用npminit
初始化我的新包,我还创建了入口点(在我的例子中是app.js),node app.js运行良好
我还使用了npmpack
来创建一个包和npm安装{path to my.tgz}
这是我的app.js:
console.log('Hi from NodeJS');
到目前为止还没什么特别的
该包名为“mypackage”
问题是,当我键入时:
mypackage
在我的控制台中,控制台应用程序不运行
有什么想法吗
比尔,
您正在寻找的Inx
要将一个或多个可执行文件安装到路径
,您应该提供
package.json
中的bin字段,它是命令名到
本地文件名。安装时,npm将该文件符号链接到
全局安装的前缀为/bin,本地安装的前缀为./node\u modules/.bin/
安装
例如,grunt cli具有以下功能:
"bin": {
"grunt": "bin/grunt"
},
其中bin/grunt
是一个js文件(但没有定义扩展名)
另外,如果您计划将此作为全球包发货,请不要忘记设置。您正在寻找的
要将一个或多个可执行文件安装到路径
,您应该提供
package.json
中的bin字段,它是命令名到
本地文件名。安装时,npm将该文件符号链接到
全局安装的前缀为/bin,本地安装的前缀为./node\u modules/.bin/
安装
例如,grunt cli具有以下功能:
"bin": {
"grunt": "bin/grunt"
},
其中bin/grunt
是一个js文件(但没有定义扩展名)
另外,如果您计划将此作为全球包发货,请不要忘记设置。您好!好的,在我做了一些测试之后。。基本上,这就是执行/打开位于bin/grunt中的文件/程序?因此,如果我有我的npm控制台应用程序。。我基本上会将.exe放入并使用:“bin”:{“mypackage”:“bin/mypackage.exe”}?我刚刚用“bin:{“mypackage”:“bin/mypackage”}尝试了上面的方法,其中bin/mypackage文件容器包含一个简单的console.log。。然而。。安装软件包并在我的控制台中运行“mypackage”后。。我被要求选择一个打开文件的程序,因为我的操作系统未重新定义该文件。@lnx51您不需要任何exe文件,您在bin中指定的路径是js文件的路径。因此,在
package.json
+installeld全局+执行mypack
将与节点路径/to/file.js
相同!好的,在我做了一些测试之后。。基本上,这就是执行/打开位于bin/grunt中的文件/程序?因此,如果我有我的npm控制台应用程序。。我基本上会将.exe放入并使用:“bin”:{“mypackage”:“bin/mypackage.exe”}?我刚刚用“bin:{“mypackage”:“bin/mypackage”}尝试了上面的方法,其中bin/mypackage文件容器包含一个简单的console.log。。然而。。安装软件包并在我的控制台中运行“mypackage”后。。我被要求选择一个打开文件的程序,因为我的操作系统未重新定义该文件。@lnx51您不需要任何exe文件,您在bin中指定的路径是js文件的路径。因此,在package.json
+installeld全局+执行mypack
时,在bin:{“mypack”:“path/to/file.js”}
中设置,与节点路径/to/file.js
相同