node.js - NPM:命令行 Node 工具的模块安装?

标签 node.js command-line npm

我有一个用 node 编写的命令行工具。我想:

  • 让应用能够加载其依赖项并正常工作。目前,在 npm install -g <somemodule> 之后该模块仍然不可用。事情过去不是这样运作的。
  • 不必运行 npm link在每个文件夹上,正如我在 NPM 1.0 docs 中读到的那样.上面的文档还讨论了 $PATH,这似乎与主题无关,因为我关心的是 Node 模块,而不是二进制文件。

Node 命令行工具如何/应该如何处理其依赖性,以便命令行工具可以从任何目录运行?

最佳答案

假设您的文件名为 node-binary.js,您可以在 node.js 应用程序的主文件中添加以下内容。

#! /usr/bin/env node

// your app code
console.log('TEST node binary');

并且,在 package.json 文件中,您需要指定应用程序的入口点

...
"preferGlobal": "true",
"bin": {
    "node-binary": "node-binary.js"
},
...

并在应用程序目录中运行命令 npm link。您现在应该能够从任何目录使用 node-binary 命令。

希望对您有所帮助...:)

关于node.js - NPM:命令行 Node 工具的模块安装?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18206459/

相关文章:

c# - 从调用进程获取命令行

c# - 尝试使用 C# 运行命令

node.js - 类型 'body' 上不存在属性 'Request'

java - 如何从命令行发送多行字符串

javascript - 子目录中的 npm run 命令

npm - 从本地目录加载 npm 包,无需复制不必要的文件/文件夹,例如 node_modules

linux - 为 node.js 安装 NPM 时出错

node.js - 在 sequelize.js 中禁用 updatedAt(更新日期)字段

javascript - 从需要的文件扩展 Node.js 中的 Array.prototype

node.js - 私有(private)依赖项的 npm 安装不起作用,但克隆可以