Node.js 使用npm如何将包作为zip下载,并将其所有依赖项包含在包中

Node.js 使用npm如何将包作为zip下载,并将其所有依赖项包含在包中,node.js,package,npm,Node.js,Package,Npm,我试图做的是下载软件包及其所有依赖项,以便将它们转移到另一台没有internet连接的计算机上并安装在那里 因此,情况将是: 下载包(到zip/tarball/任何文件),无需安装 下载的文件中包含了它的所有依赖项(正确的版本,以及它的依赖项的依赖项) 将文件传输到其他计算机 运行npm安装到文件位置(可选-g重要) 安装包时附带依赖项 快乐露营者 我觉得必须有一个npm命令才能以这种方式下载和打包(创建)文件 我试着寻找解决这个问题的办法,但没有用 这是我第一次使用node,所以我很抱歉我没有

我试图做的是下载软件包及其所有依赖项,以便将它们转移到另一台没有internet连接的计算机上并安装在那里

因此,情况将是:

  • 下载包(到zip/tarball/任何文件),无需安装

  • 下载的文件中包含了它的所有依赖项(正确的版本,以及它的依赖项的依赖项)

  • 将文件传输到其他计算机

  • 运行
    npm安装到文件位置(可选
    -g
    重要)

  • 安装包时附带依赖项

  • 快乐露营者

  • 我觉得必须有一个npm命令才能以这种方式下载和打包(创建)文件

    我试着寻找解决这个问题的办法,但没有用


    这是我第一次使用node,所以我很抱歉我没有正确地研究它,因为我对node/npm术语缺乏了解。

    只需在package目录中运行
    npm install
    ,并将其全部存档即可。假设您不需要满足非npm需求,并且两台机器都运行相同版本的node,则无需执行更多操作。所有下载的依赖项都将安装在
    /node\u模块
    中。但是,通常最好归档整个包,因为开发人员可能已经实现了一些附加的设置例程

  • 将软件包下载到具有internet的计算机上

  • 确保应用程序包的根目录下有一个
    package.json
    文件,其中列出了所有依赖项。通过执行
    npm安装依赖项名称--save
    ,可以让npm在
    package.json
    中保存依赖项。
    --save
    标志将导致npm将依赖项写入应用程序的
    package.json
    文件(如果有)。如果它没有打开,那么它将一事无成。如果需要,您还可以指示npm为您的应用程序创建一个
    package.json
    文件,只需从应用程序目录中运行
    npm init

  • 从应用程序目录中运行
    npm install
    。这将创建
    node\u modules
    目录,并安装应用程序的
    package.json
    文件中列出的所有依赖项

  • 现在目录中有一个安装了所有依赖项的
    节点\u modules
    目录,请将其压缩。将zip存档转移到另一台计算机

  • 只需将归档文件解压缩到最终目的地,即可完成。该应用程序现在位于需要的位置,并且依赖项已经安装

  • 现在只需使用
    节点app.js
    运行应用程序,将“app.js”替换为应用程序主入口点文件的名称


  • 我只是做了你描述的事情——打包一个包,包括它的所有依赖项。基本上,脚本所做的是重新编写模块的
    包.json
    文件,将其所有
    依赖项
    移动到
    捆绑依赖项
    ,然后打包整个内容。将生成的tarball上传到服务器,然后
    npm安装它。非常有用。

    如果该包需要作为一个全局包(即grunt),该怎么办?我在新机器的软件包目录中尝试了
    npm I-g
    。@l__flex__\l几乎不需要全局npm软件包。您可以在本地安装它们并运行,例如,使用
    /node\u modules/.bin/grunt
    如何检查此软件包是否没有恶意安装挂钩?有人可能会想下载zip包,这是有原因的。有点恼人的是,这个功能还没有被添加到npm,而不诉诸黑客。