【问题标题】:Progmatically using npm from nodejs build script以编程方式使用来自节点 js 构建脚本的 npm
【发布时间】:2013-08-19 19:14:29
【问题描述】:

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

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

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

我希望伪代码是:

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

虽然找不到与此相关的任何文档,所以不确定是否可能......是这样吗?

【问题讨论】:

    标签: node.js npm jake


    【解决方案1】:

    是的,看看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 的更多见解。

    【讨论】:

    • 我尝试浏览 npm 站点,但所有文档似乎都返回到 nodejs 站点,感谢您的链接。关于如何在子目录而不是根目录上调用 install 并不是很清楚,但可以查看源代码以了解更多信息。
    猜你喜欢
    • 2019-07-06
    • 1970-01-01
    • 2020-11-15
    • 1970-01-01
    • 2021-10-05
    • 1970-01-01
    • 2013-09-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多