【问题标题】:How to configure package.json to add a "self compiled binary" as a dependency?如何配置 package.json 以添加“自编译二进制文件”作为依赖项?
【发布时间】:2014-06-25 05:27:10
【问题描述】:

我对 npm-install 的概念非常陌生。请对我可能出错的地方提出一些见解。我有一个 .js 文件,我应该通过它调用带有一些命令行参数的二进制文件。我确实编写了 package.json 将主要参数设置为 javascript 文件,并且我正在使用预安装脚本来编译代码并创建一个二进制文件应该由我的 java 脚本文件使用。

几个问题:

  1. 如何让 package.json 将此编译后的二进制文件作为 js 文件的依赖项?

  2. npm install 对我来说运行良好,但我没有看到任何输出文件夹。我希望它会在 pwd 中生成一个 .node_module 并将内容复制到其中的 bin/ 文件夹中。可能是,我错过了一些东西。

    npm info prepublish test@0v.0.1
    npm verb from cache <pwd>/package.json
    npm verb readInstalled returning test@0.0.1
    npm verb exit [ 0, true ]
    npm info ok 
    

有人可以通过一些见解来了解这个问题吗?

【问题讨论】:

    标签: json node.js npm


    【解决方案1】:

    您不必在package.json 中包含您的二进制文件。如果您使用的是Express,请将其放在父目录中的 node-modules 文件夹中。否则,您可以指定调用它的文件的完整路径,也可以将文件放在父目录中。对于全局安装,node-modules 文件夹通常创建在:C:\Users\[Username]\AppData\Roaming\npm\node_modules

    【讨论】:

    • 我在 Ubuntu 上工作,我尝试在 .npm/ 目录的主文件夹中查找 node_modules,但我似乎没有找到它。我还在触发“npm install”的父目录中查找 node_module/,但它也不存在。
    • this 有帮助吗?
    【解决方案2】:

    我想出了一个办法来处理它。使用 js 模块并根据该模块的要求使用我的节点会导致 npm 在 node_modules/ 文件夹中设置我的节点。我使用预安装的 shell 脚本来编译我的二进制文件,并在执行时使用相对路径来使用二进制文件。

    感谢所有回复的人。

    【讨论】:

      猜你喜欢
      • 2016-04-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-11-03
      • 1970-01-01
      • 2017-06-15
      • 1970-01-01
      • 2017-01-11
      相关资源
      最近更新 更多