【问题标题】:Run make command on Node project在 Node 项目上运行 make 命令
【发布时间】:2017-03-15 22:52:46
【问题描述】:

我有一个makefile,比方说;

foo2:
    echo foo2

foo: prefoo
    echo foo


foobar: prefoobar
    echo foobar

all: foo foo2 foobar

所以我需要在节点项目上运行这个 makefile 命令。我需要使用我的package.json 文件运行make foomake foo2。我怎样才能做到这一点?可以写在下面吗?

“脚本”:{“foo”:“make foo”,“foo2”:“make foo2”}

谢谢

【问题讨论】:

    标签: node.js bash makefile npm


    【解决方案1】:

    所以我需要在节点项目上运行这个 makefile 命令。我需要使用我的 package.json 文件运行 make foo 或 make foo2。我怎样才能做到这一点?可以写在下面吗?

    "scripts": { "foo": "make foo", "foo2": "make foo2" }
    

    你可以,它会按照你的意愿工作。事实上,npm docs 包含这个在npm 脚本中运行 Make 的示例:

    如果你想运行一个 make 命令,你可以这样做。这工作得很好:

    { "scripts" :
      { "preinstall" : "./configure"
      , "install" : "make && make install"
      , "test" : "make test"
      }
    }
    

    要记住的一点是 npm 和 Make 以不同方式管理依赖项:

    • npm 不会自动在 Makefile 中查找生命周期依赖关系:如果您希望 prefoofoo 之前由 npm 运行,则必须定义 { "prefoo": "make prefoo" }

      李>
    • Make 没有运行 npm 脚本的隐式配方,因此如果您希望 Make 运行 npm 以实现其某些目标,则需要添加类似的内容:

      prefoo:
          npm run prefoo
      

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-04-27
      • 2016-11-07
      • 2018-06-18
      相关资源
      最近更新 更多