以编程方式使用节点js构建脚本中的npm

时间:2013-08-19 11:09:53

标签: node.js npm jake

我有一个包含多个节点应用程序端点的大型项目,每个端点都有自己的package.json文件。

我有一个主构建脚本(用jake编写),用于设置给定环境,运行测试,打包应用程序等。

那么根构建脚本是否有办法在给定目录上运行“npm install”。

我希望psudo代码是:

var npm = require("npm");
var package1Directory = "some-directory";
npm.install(packageDirectory);

找不到任何关于此的文档,但不确定是否可能......是这样的吗?

1 个答案:

答案 0 :(得分:2)

是的,请查看the docs

var npm = require("npm")
npm.load(myConfigObject, function (er) {
  if (er) return handlError(er)
  npm.commands.install(["some", "args"], function (er, data) {
    if (er) return commandFailed(er)
    // command succeeded, and data might have some info
  })
  npm.on("log", function (message) { .... })
})

另请参阅this example,其中提供了有关如何以编程方式使用npm的更多见解。