我正在开发NodeJS应用程序。它将与Electron一起部署。这很好,因为我需要做的就是将我的应用程序打包到Electron包中的app文件夹中,然后按官方电子文档中的说明重新命名,我将准备在任何计算机上安装它。
特别是,使用Electron进行部署意味着我不需要在我的用户计算机上安装NodeJS,因为Electron软件包本身就是一个NodeJS解释器,因此它可以开箱即用完全靠它自己。
现在,当我在我的系统上安装NodeJS时,我也同时安装了npm。这意味着每当我需要安装软件包时,我都可以在命令行中使用它。
现在,我需要部署的程序将通过在需要时从github中提取存储库来同步和更新存储库。我找到了一个奇妙的NodeJS绑定Git,nodegit,它可以独立工作而不需要在目标计算机上安装任何东西,这很好,因为我不确定我的用户是否会安装git。现在,每次拉动我的存储库时,我都需要做一些npm install
。
提出了我的问题:我知道有一个库npm
,我可以用来从任何NodeJS程序以编程方式使用npm。但是,npm
库是独立的,还是取决于系统上npm
的安装?如果是这样,我该如何解决这个问题呢?我需要能够在用户环境中部署的Electron应用程序中执行npm install
我无法安装其他任何东西,特别是npm。
答案 0 :(得分:1)
npm install --save npm
我不确定为什么我认为这不会起作用,但我测试过它似乎也是如此:)
答案 1 :(得分:0)
如果您像在任何其他进程中一样在本地安装npm,那么您应该可以使用它。
var npm = require('npm');
然后从那里开始使用git,然后使用install your packages。