首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Node.js 项目开发中使用 npm install 命令行安装依赖技术分析

当我们在 Node.js 项目中运行 npm install 命令时,这个命令会根据 package.json 文件中依赖,下载并安装必要模块。但这个过程并不简单,它涉及到诸多步骤和细节。...解析依赖:下载每个包可能还有自己依赖(在该包 package.json 文件中定义)。因此,npm 需要解析并下载这些依赖。这个过程是递归,直到所有依赖都被解析和下载。...查找最新版本: npm 将与 npm 注册表通信,确定每个依赖最新版本。注册表是一个包含所有公共包信息中央存储库。决定安装版本: npm 会确定每个依赖应该安装的确切版本。...npm 将递归解析这些依赖关系,确保它们也被下载。下载依赖npm 开始下载 express@4.17.1 和 lodash@4.17.21,以及它们所有依赖。...生成 package-lock.json: 如果项目中没有 package-lock.json 文件,npm 可能会在这一步生成一个,以确保将来安装使用相同依赖版本。

85520

前端包管理工具与配置

-D 安装到当前项目 并写入到devDependencies devDependencies与dependencies 区别: devDependencies 是本地开发时用依赖 dependencies...并写入到devDependencies devDependencies与dependencies 区别: devDependencies 是本地开发时用依赖 dependencies 是生产环境依赖...devdependencies部分 安装依赖 安装依赖npm install 会将package.json 里面的devDependencies和dependencies下所有包都会下载到项目的node_modules...下依赖npm i #在项目中安装包名为 xxx 依赖包(配置在 dependencies 下) npm i xxx #在项目中安装包名为 xxx 依赖包(配置在 dependencies...下) npm i xxx --save #在项目中安装包名为 xxx 依赖包(配置在 devDependencies 下) npm i xxx --save-dev #全局安装包名为 xxx

38510
您找到你想要的搜索结果了吗?
是的
没有找到

包管理工具Yarn使用和命令总结

我本人在实际运用场景中,也经常使用 yarn 在安装或删除依赖文件,使用 npm 运行项目中定义的如:启动命令,打包命令等,所以二者完全可以同时使用。 二.Yarn安装和命令 1....显示依赖bin文件夹位置 yarn cache 管理用户目录中依赖缓存 yarn check 验证当前项目中程序包依赖 yarn config 管理依赖配置文件 yarn create 创建Yarn...用于安装项目的所有依赖 yarn licenses 列出已安装依赖许可证及源码url yarn link 链接依赖文件夹 yarn list 列出已安装依赖 yarn login 存储您在 registry...pack 创建依赖压缩gzip yarn policies 规定整个项目中执行Yarn版本 yarn publish 将依赖发布到npm注册表 yarn remove 删除依赖 yarn run...将指定依赖升级为最新版本 yarn upgrade-interactive 更新过期依赖简便方法 yarn version 展示依赖版本信息 yarn versions 展示所有依赖版本信息 yarn

1.2K20

如何更新 package.json 中依赖

在一个项目中,其包依赖列表保存在 package.json 文件中。每个已安装包都被分配了一个版本号,一般由 三部分组成:major.minor.patch 。...有这种插入符号依赖意味着至少要安装 15.2.0 版本。 当存在一个更高 major 版本时,它就可能被使用。比方说当时有了个 15.6.2,就会在安装时升级到该版本。...如果该包中存在 package-lock 或 shrinkwrap 文件(在并存时后者优先级更高),将会按其进行依赖安装。...npm update 会更新依赖列表中出现所有包,同时也会安装缺失包。 二者区别是什么呢?...同时,对 devDependencies 处理也是不同npm install 会安装或升级 devDependencies ,除非添加了 --production 标记 npm update 会忽略

4.9K10

Web前端学习笔记之离线安装npm

0x01 使用 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...中一个单独pm2文件夹中,这样我们可以方便地将pm2及其所有相关依赖都拷贝出来。

1.7K40

你需要知道几类npm依赖包管理

在我们日常node开发中,我经常会依赖于这样或那样第三方包,而本章就来讨论一下如何管理node项目中依赖。...在这种情况下,最好在devDependencies对象中映射这些附加,如:构建类包→grunt、gulp;测试类包→mocha、karma;编译类包→coffee。...安装条件:当用户执行npm link命令,或者在该项目的根目录下执行npm install时会安装devDependencies中定义包。...在npm1和npm2情况下,会默认将tea安装,而在npm3情况下,如果你在依赖tea-latte时,却没有依赖tea,那么npm会报错,提示你需要引入tea包。...来说 在你目中使用npm3安装了some-package之后,项目的node_modules文件结构是下面的样子: 也就是说,bundleDependencies 作用就是在用户安装了 package-a

2.5K60

爬虫工程师也应该会 NodeJS 知识(二)

: dependencies:生产环境包依赖,一个关联数组,由包名称和版本号组成 devDependencies:开发环境包依赖,一个关联数组,由包名称和版本号组成 当我们在安装包时使用npm...install 包名 --save 安装包名会在dependencies这个配置中体现出来。...当我们在安装包时使用npm install 包名 --save-dev 安装包名会在devDependencies这个配置中体现出来。...当我们将项目拷贝给其它人,或者发布时候,我们不会将项目中 node_modules 也给别人,因为太大,而且有的包可能只在开发阶段需要,但是在上线阶段不需要,所以需要分开指定 所以在将项目发布时候可以使用下面的命令来配置对应环境...npm i 所有的包都会被安装 npm i --production 只会安装dependencies中npm i --development 只会安装devDependencies

44450

npm 依赖管理中被忽略那些细节

执行 npm install 后,npm 根据 dependencies 和 devDependencies 属性中指定包来确定第一层依赖npm 2 会根据第一层依赖依赖,递归安装各个包到子依赖.../node_modules 这层目录中包含有我们 package.json 文件中所有依赖包,而这些依赖依赖包都安装在了自己 node_modules 中 ,形成类似于下面的依赖树: 这样目录有较为明显好处...但在多数情况下,npm 无法做到这一点。有以下两个原因: 1)某些依赖自上次安装以来,可能已发布了新版本 。...中 dependencies 依赖相同 dependencies :结构和外层 dependencies 结构相同,存储安装在子依赖 node_modules 中依赖包 需要注意是,并不是所有的子依赖都有...,执行 npm install 时默认会把所有依赖全部安装,但是如果使用 npm install --production 时就只会安装 dependencies 中依赖,如果是 node 服务项目,

2.4K10

前端小技巧

安全性: Yarn拥有一个lockfile(yarn.lock)文件,该文件记录了项目中每个依赖版本号和hash值,确保每次安装依赖时获取相同版本,避免版本不同导致问题。...可靠性: Yarn缓存机制能够帮助开发人员在没有网络连接情况下依然可以构建项目,而npm需要依赖于联网状态。...添加依赖:使用yarn添加依赖时,可以选择性地将它们保存到“dependencies”、“devDependencies”或“peerDependencies”中。...> 更新依赖:可以使用以下命令更新所有依赖版本: yarn upgrade 如果只需要更新某个依赖,可以使用以下命令: yarn upgrade 安装依赖...:当从代码库中检出项目时,可以运行以下命令安装所有依赖: yarn install 运行脚本:在package.json文件“scripts”字段中定义脚本可以使用以下命令来运行: yarn <script-name

14610

这还是我最熟悉package.json吗?

npm 配置还是挺多,具体可以参考package.json官方文档[2]。通读了文档之后,我略过了一些基础配置,总结了一些我认为比较有用配置。 ?...通过npm install --save-dev安装依赖包都会进入到devDependencies中。 但是,在结合一些构建工具使用时,我们往往会有困惑。...比如我安装了一个包到devDependencies中,但是不小心在项目中引用了它,最后也被 webpack 打包到构建结果中了。这是怎么回事呢?...注意,一个 npm开发者如果声明了peerDependencies,开发环境下在该包目录npm install也不会在node_modules中安装这些依赖,所以往往还需要借助devDependencies...但是,在开发组件时,一般还需要本地开发环境跑一个 demo 试试效果,这时候是依赖 vue ,所以还需要在 devDependencies安装 vue 。

49130

这还是我最熟悉package.json吗?

npm 配置还是挺多,具体可以参考package.json官方文档[2]。通读了文档之后,我略过了一些基础配置,总结了一些我认为比较有用配置。...通过npm install --save-dev安装依赖包都会进入到devDependencies中。 但是,在结合一些构建工具使用时,我们往往会有困惑。...比如我安装了一个包到devDependencies中,但是不小心在项目中引用了它,最后也被 webpack 打包到构建结果中了。这是怎么回事呢?...注意,一个 npm开发者如果声明了peerDependencies,开发环境下在该包目录npm install也不会在node_modules中安装这些依赖,所以往往还需要借助devDependencies...但是,在开发组件时,一般还需要本地开发环境跑一个 demo 试试效果,这时候是依赖 vue ,所以还需要在 devDependencies安装 vue 。

40110

Nest集成Swagger并部署至YAPI

前言 前几天在项目中集成了swagger,一切准备就绪打算将其部署到服务器时发现并不顺利,访问时候页面白屏,由于我nest项目采用是单文件部署,互联网上没有找到相关解决方案,于是我就成了第一个吃螃蟹的人...集成Swagger 首先,我们通过yarn安装三个依赖包,如下所示: yarn add @nestjs/swagger swagger-ui-express fastify-swagger 安装完成后...: default选项列出了我们项目中所有接口 image-20220317211550995 通过注解编写接口文档 在@nestjs/swagger库中,它提供了丰富依赖供我们使用, 为我们生成友好接口文档...经过一番思考后,应该是因为webpack把所有依赖都打包进main.js了,swagger-ui引用文件应该是相对路径,所以才导致了404问题,抱着这个疑问,我打开了swagger-ui-express...devDependencies依赖中。

1.8K40

开发中遇到过 NPM 疑惑解答

来源:阳呀呀 https://segmentfault.com/a/1190000039289332 每次克隆下别人代码后,执行第一步就是npm install安装依赖包,安装成功后所有的包都会放在项目的...我们平时用npm install命令既会安装dependencies中包,也会安装devDependencies包。...package-lock.json文件作用就是锁定当前依赖安装结构,与node_modules中下所有树状结构一一对应。...requires: 对应子依赖依赖,与依赖package.json中dependencies依赖相同 dependencies:结构与外层结构相同,存在于包自己node_modules中依赖...默认情况下,只会列出项目中顶层依赖过时信息。如果想要更深层查看,可以加上depth参数,如npm-outdated \--depth=1 以下是在我目中执行npm-outdated部分结果。

1.4K10
领券