npm离线安装npm包的两种方法

1、使用npm link

使用npm link 的方式是最常用的方法,具体做法是在联网机器上下载pm2的源码并安装好依赖,拷贝到离线服务器上,最后借助npm link将pm2链接到全局区域。

首先,将pm2的源代码克隆下来:

$ git clone https://github.com/Unitech/pm2.git

然后进入到pm2项目中,安装好所有的依赖:

$ cd pm2

$ npm install

将安装好依赖的pm2文件夹拷贝到目标服务器上,进入pm2目录链接到全局区域:

$ cd pm2

$ npm link

这种方式最关键的是借助npm link完成链接,但npm link这条命令本意是设计给开发人员调试用的。但开发人员开发某个全局命令工具的时候,通过将命令从本地工程目录链接到全局,这样调试的时候,可以实时查看本地代码在全局环境下的执行情况。所以,npm link的项目需要安装所有的依赖,包括dependencies以及devDependencies,而我们如果只是使用而不是开发某个包的话,正常情况下不应该安装devDependencies。

总而言之,这种方式优点是比较简单,缺点是安装了不需要的 devDependencies ,对于有“洁癖”的人是难以忍受的。

2、使用npm install

那有什么方法相比于上一种方法更干净呢?答案是 npm install 直接从文件夹安装。

同样以pm2为例,首先我们需要准备pm2包,可以在联网的机器上执行:

$ npm install pm2 --global-style

上面的 --global-style 很关键,表示将pm2安装到node_modules中一个单独的pm2文件夹中,这样我们可以方便地将pm2及其所有相关依赖都拷贝出来。也可以使用 npm install pm2 -g 安装到全局的node_modules,其文件布局是一样。

然后,将pm2文件拷贝到目标机器上,使用以下命令安装:

$ npm install pm2/ -g

这种方式不需要安装多余的 devDependencies ,并且不需要克隆pm2的源码,比第一种方法更干净环保。

  • 5
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
npm(Node Package Manager)是Node.js管理器,用于管理和安装项目中依赖的模块。而pnpm(Plain NPM)是一个优化的管理器,它在一些场景下提供了更快的安装速度和更小的磁盘占用。 如果你想要在离线环境下使用pnpm进行安装,你需要先确保你已经下载了所需的定义文件(package-lock.json或yarn.lock)。离线安装通常括以下几个步骤: 1. **下载依赖文件**:在离线模式下,首先需要确保你有一个含所有依赖的锁文件。你可以从一个已有的网络环境导出这个文件,或者直接从之前的一个离线安装复制。 ```sh # 如果你有网络,可以从已有的项目中导出 npx pnpm install --offline --lockfile=path/to/your/package-lock.json # 如果没有网络,但已经有锁文件,可以尝试复制 cp package-lock.json /path/to/offline/installation ``` 2. **切换到离线模式**:在执行安装命令前,告诉pnpm你将在离线模式下工作。 ```sh pnpm i --offline ``` 3. **安装依赖**:pnpm会尝试从本地缓存或下载目录中查找,如果找不到,会忽略并跳过。 4. **确认安装**:安装完成后,确认所有依赖都被正确地安装到了指定的目录下,如有必要,可能需要手动将这些文件复制到你的离线环境中供未来使用。 注意,虽然pnpm支持离线安装,但是依赖的更新通常需要在线环境。因此,为了保持最佳实践,离线环境最好只用于临时的情况或者特定版本的项目。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值