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

在 Ubuntu 和其他 Linux 发行版上使用 Yarn

使用 Yarn 创建一个新项目 与 npm 一样,Yarn 也可以使用 package.json 文件。在这里添加依赖。所有依赖都缓存在项目根目录下的 node_modules 目录中。...在项目的根目录中,运行以下命令以生成新的 package.json 文件: 它会问你一些问题。你可以按回车键跳过或使用默认值。...使用 Yarn 添加依赖 你可以通过以下方式添加对特定的依赖关系: yarn add 例如,如果你想在项目中使用 Lodash,则可以使用 Yarn 添加它,如下所示: yarn add...你还可以通过以下方式更改已添加的依赖的版本: yarn upgrade package_name@version_or_tag 你还可以使用一个命令将项目的所有依赖升级到它们的最新版本: yarn...使用 Yarn 删除依赖 你可以通过以下方式从项目的依赖中删除: yarn remove 安装所有项目依赖 如果对你 project.json 文件进行了任何更改,则应该运行: yarn

80420

为什么要使用 package-lock.json

这会有助于在不同环境中进行协作,在这种环境中,你希望每个人都为项目的特定版本获取依赖以得到同一棵依赖树。...package.json 使用语义版本【https://semver.org/】定义所需的依赖及其各自的版本。但是语义版本控制可能很棘手。...如果有人手动更改 package.json(例如,他们删除了一个软件,因为这只是删掉一行),那么下次有人运行 npm install 时,它将更改 package-lock.json 以反映对先前软件的删除...这将同时更改 package.json 和 package-lock.json 。 npm update update 将会读取 package.json,用来查找可以更新的所有依赖。...其目的是要在某些环境中使用,例如构建服务器时以自动方式进行安装等。

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

Webpack 踩坑记 - 配置 externals 和 output

本文总结了自己开发库时依赖共同第三方时的 externals 和 output 配置。...先看一下 webpack 官方在进行打包时候,是根据 package.json 中的 mainFields 字段指定依据哪个字段中的 路径 找到第三方的,而 externals 字段则是指定以何种方式引入第三方...`:回答了当 package.json 同时包含 browser, module & main fields 字段时候,如何指定我们 webpack 不用默认的 browser 字段 3、解决方案 使用两份输出配置...,主要更改 webpack 的打包的配置中的 externals 、output 这两个字段。...首先,无论是否 externals,都需要在 package.json 中填完对 B 依赖的信息(可以根据实际情况放在 dependencies 字段或者 peerDependencies 字段) 情况

3.5K20

使用Yarn workspace,TypeScript,esbuild,React和Express构建 K8S 云原生应用(一)

结构提醒: common/ ├─ src/ │ ├─ index.ts ├─ package.json App 依赖 该 app 将需要以下依赖: react react-dom 从项目的根目录运行...依赖 server 软件将需要以下依赖: cors express 从项目的根目录运行: yarn server add cors express yarn server add -D @types...Dockerfile 要生成 Docker 镜像,第一步是在我们项目的根目录下创建一个 Dockerfile(这些步骤可以完全通过 CLI 来完成,但是使用配置文件是定义构建步骤的默认方式)。...FROM node:14.15.5-alpine WORKDIR /usr/src/app # 尽早安装依赖,以便如果我们应用程序中的 # 某些文件发生更改,Docker无需再次下载依赖, #...因为我们要优化构建时间和带宽,所以我们只想在依赖发生更改(通常比文件更改发生的频率小)时重新安装它们。 RUN 在 shell 中执行命令。

4.1K31

package.json 详解

你的 package.json 包含关于项目的重要信息。它包含关于项目的使人类可读元数据(如项目名称和说明)以及功能元数据(如程序版本号和程序所需的依赖列表)。...对于未发布的程序,此属性不是严格要求的。通常在将新版本发布到 NPM 之前,根据 SemVer,版本号会增加。当不依赖程序作为依赖或未将程序发布到 NPM 时,通常不使用这个工作流程。...但是如果将软件用作依赖,那么确保 version 字段保持最新非常重要,这样可以确保其他人所使用的软件的正确版本。...你当然可以在文本编辑器中手动编辑 package.json 并进行更改,只要你注意不要引入任何 JSON 格式错误,这对大多数字段都适用。但是我建议你尽可能使用 npm CLI 命令。...总结 package.json 文件是 Node 项目的核心。它记录了有关发布到 NPM 之前所需要的项目的重要元数据,它还定义了 npm 用于安装依赖、运行脚本以及标识的入口点的项目功能属性。

2.3K20

基于pnpm + lerna + typescript的最佳项目实践 - 理论篇

根据内容而不是位置进行检索信息的存储方式。...当你从registry安装package时,它将会使用语义化的版本添加到项目的package.json中。...如果您想自动将所有软件版本绑定在一起,请使用此选项。 这种方法的存在两个问题: 任何的重大更改都会导致所有都具有新的主要版本。...对于每个更改,按照拓扑顺序(所有依赖在依赖关系之前): i. 运行preversion生命周期。 ii. 更新 package.json 中的版本。 iii. 运行version生命周期。...如果可用[17],将更改文件添加到索引。 如果可用[18]创建提交和标记。 对于每个改变,按照词法顺序(根据目录结构的字母顺序): i. 运行postversion生命周期。

3.4K20

基于 lerna 实现 Monorepo 项目管理

随着团队建设以及相关业务的日益增长,越来越多的 NPM 需要多人协同维护,各个项目之间有关联,就不得不在多个编辑器之间切换,以及通过 npm link 来调试,开发的效率受到制约,那有没有一种方式可以解决现在的痛点...// 当前项目的描述文件 └── packages/ // 存放所有的文件夹 Lerna 初始化项目的时候,追加了一个 --independent 的参数,其含义是使用独立模式。...2.2 Lerna + Yarn Workspaces Lerna 默认会使用 NPM 作为包管理器,但使用 yarn 作为 Lerna 的默认包管理器是更推荐的方式。...如果使用个人账号发包到公司内自建的 Registry 上,万一该同学离职了,该仓库会变成“幽灵仓库”。 当然,我们可以找公司内部 Registry 维护者直接更改对应,但总归是比较麻烦的一件事。...发包时,会默认忽略掉在 package.json 中设置了 "private": true 的私有

1.6K20

前端包管理工具与配置

任何一个项目的构建离不开工具和统一的管理标准,在项目开发和维护过程中,我们需要了解安装的相应工具和配置文件,以此来有效的进行项目的迭代和版本的更新,为项目提供基本的运行环境。...包管理工具 包管理工具顾名思义就是统一管理这些轮子的软件或者工具,它以多种方式自动处理项目依赖关系、提供了命令行工具(CLI)、支持跟踪依赖和版本等功能,除此之外还可以安装、卸载、更新和升级,配置项目设置...npm install 会将package.json 里面的devDependencies和dependencies下的所有都会下载到项目的node_modules文件夹下(没有的改文件夹会新建一个)...文件 yarn install 用于安装项目的所有依赖 yarn licenses 列出已安装依赖的许可证及源码url...npm install 命令会根据这个文件下载所有依赖模块。

42810

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

,然后手动更改 package.json 中的配置; 3)如果想要删除某个,只需要简单的删除 package.json 文件中相应的某一行,然后删除 node_modules 中该的目录; 但是这样的层级结构也有较为明显的缺陷...比如:A 包在团队中第一个人安装的时候是 1.0.5 版本,package.json 中的配置为 A: '^1.0.5';团队中第二个人把代码拉下来的时候,A 的版本已经升级成了 1.0.8,根据...就可以采用这样的方式用于服务运行时安装和打包,减少大小。...在 npm 2 中,当我们下载 ant-design@3.x 时,peerDependencies 中指定的依赖会随着 ant-design@3.x 一起被强制安装,所以我们不需要在宿主项目的 package.json...npm pack 的方式来打包时,上述的例子会生成一个 project-1.0.0.tgz 的文件,在使用了 bundledDependencies 后,打包时会把 Axios 和 Lodash 这两个依赖一起放入

2.4K10

玩转npm:从基础到实践的全面指南

版本管理:指定项目依赖的版本,确保项目不受不兼容版本的影响。 脚本执行:在package.json文件中定义脚本,使用npm run命令执行。...发布和分享:开发者可以将自己编写的发布到NPM的公共仓库中,供其他开发者使用。 依赖解析:递归地解析和安装其依赖,确保项目中的所有依赖都得到满足。...这些依赖是在生产环境中必须安装和包含的,因为它们包含了项目功能实现的核心代码或是该应用程序直接使用的库。...这两种方式各有用途: 全局安装 (npm install -g):全局安装的对所有项目都可用。这意味着无论在哪里,都可以在命令行中访问这些。...以下是一些建议: 使用语义化版本控制:遵循语义化版本控制规则,即主版本号.次版本号.修订号。当发布新功能时,增加次版本号;当修复 bug 时,增加修订号;当做出破坏性更改时,增加主版本号。

17610

玩转npm:从基础到实践的全面指南

版本管理:指定项目依赖的版本,确保项目不受不兼容版本的影响。 脚本执行:在package.json文件中定义脚本,使用npm run命令执行。...发布和分享:开发者可以将自己编写的发布到NPM的公共仓库中,供其他开发者使用。 依赖解析:递归地解析和安装其依赖,确保项目中的所有依赖都得到满足。...这些依赖是在生产环境中必须安装和包含的,因为它们包含了项目功能实现的核心代码或是该应用程序直接使用的库。...这两种方式各有用途: 全局安装 (npm install -g):全局安装的对所有项目都可用。这意味着无论在哪里,都可以在命令行中访问这些。...以下是一些建议: 使用语义化版本控制:遵循语义化版本控制规则,即主版本号.次版本号.修订号。当发布新功能时,增加次版本号;当修复 bug 时,增加修订号;当做出破坏性更改时,增加主版本号。

10410

npm安装时常见参数及作用介绍

无参数 作用: 在没有提供任何参数的情况下, npm 会默认将安装到项目的 node_modules 目录下,并且不会将其添加到 package.json 文件中。...--save 或 -S 作用: 将安装的添加到项目的 package.json 文件中的 dependencies 字段,以便在项目重新安装时自动安装依赖。...--save-dev 或 -D 作用: 将安装的添加到项目的 package.json 文件中的 devDependencies 字段,通常用于开发环境的依赖,比如测试框架、构建工具等。...--global 或 -g 作用: 将安装到全局环境,而不是当前项目的本地环境。这使得可以在系统的任何地方使用,通常用于工具类。...--no-save 作用: 安装但不将其添加到 package.json 文件中的依赖中。 这在你只需要临时安装,而不希望更新项目的依赖清单时非常有用。

10500

你真的了解package.json吗?

每个包管理器都需要一种方式来跟踪在当前项目中应该使用哪些版本的哪些软件。通常,会创建一个文件,将这些依赖关系映射到它们对应的版本上。...2. package.json 中关键字段 创建package.json 我们可以使用 npm init 命令在任意我们想创建前端项目的文件夹中创建一个 package.json 文件。...需要注意: 打包的依赖无法被使用者覆盖更新 会增加发布的体积 需要同步维护依赖版本 所以需要根据实际情况权衡利弊来决定哪些依赖适合打包。...该文件的目的是确保所有依赖在不同的机器上以相同的方式安装,从而保证项目在不同环境中能够一致工作。...通过使用 package.json,我们可以轻松管理项目所需的依赖,确保安装每个软件的正确版本。这使得更容易维护项目并在必要时更新依赖

9810

你真的了解package.json吗?

每个包管理器都需要一种方式来跟踪在「当前项目中应该使用哪些版本的哪些软件」。通常,会创建一个文件,将这些「依赖关系映射到它们对应的版本」上。...❞ 2. package.json 中关键字段 创建package.json 我们可以使用 npm init 命令在任意我们想创建前端项目的文件夹中创建一个 package.json 文件。...需要注意: 打包的依赖无法被使用者覆盖更新 会增加发布的体积 需要同步维护依赖版本 所以需要根据实际情况权衡利弊来决定哪些依赖适合打包。...❝该文件的目的是确保所有依赖在不同的机器上以相同的方式安装,从而保证项目在不同环境中能够一致工作。...通过使用 package.json,我们可以轻松管理项目所需的依赖,确保安装每个软件的正确版本。这使得更容易维护项目并在必要时更新依赖

15310

不影响开发体验,如何将单体 Node.js 变成 Monorepo

为了使可以作为其他的依赖导入(也就是 workspaces),我们建议使用 Yarn 3 或其他支持工作空间的包管理器。...在将单体代码库(包括 package.json 和 tsconfig.json)移动到 servers/monolith/ 之后,在项目的根目录下新建一个 package.json 文件,其中 workspaces...我们宁愿采用一种子目录无关的方式导入函数: import { hasOwnProperty } from "@myorg/common-utils" 即使我们在package.json 文件里指定...此时,像 Turborepo 这样的 Monorepo 编排器就派上用场了:我们可以让它根据声明好的依赖关系递归地构建。...我们可以把这些依赖和文件留在根目录一级,那样所有都可以共用。或者在每个中复制一份。当然,还有更好的方法。

1.8K20

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

一.Yarn简介 了解前端开发的人可能会习惯于使用 npm 或者cnpm 作为我们项目的包管理工具,它们在给我们的日常开发带来便利的同时,也伴随着,如:安装慢、无法保持的一致性等让开发者头疼的问题,于是作为...安装Yarn yarn 有很多种安装方式,对于不同的系统,我们可以区别安装,但在这里我推荐大家使用 Npm 去安装,这种方法最方便简洁。...Yarn的使用方法 现在 Yarn 已经 安装完毕,可以开始使用了。 以下是一些你需要的最常用的命令。 (1) 新建项目 yarn init 运行后,会在项目里面生成package.json文件。...文件 yarn install 用于安装项目的所有依赖 yarn licenses 列出已安装依赖的许可证及源码url yarn link 链接依赖文件夹 yarn list 列出已安装的依赖 yarn...,尤其是一些相对较老的项目,我们是通常是使用npm来初始化项目的

1.3K20

package.json文件快速入门详解

npm在package.json文件中管理项目的依赖以及项目的元数据。 node执行js中require的时候,也会根据package.json中的依赖查找。...package.json package.json是什么 每个项目的根目录下面,一般都有一个package.json文件,定义了这个项目所需要的各种模块,以及项目的配置信息(比如名称、版本、许可证等元数据...npm install命令根据这个配置文件,自动下载所需的模块,也就是配置项目所需的运行和开发环境。 下面是一个最简单的package.json文件,只定义两元数据:项目名称和项目版本。...{ "name" : "xxx", "version" : "0.0.0", } package.json文件就是一个JSON对象,该对象的每一个成员就是当前项目的设置。...Git地址 user/repo 2.License 授权方式,如果是使用一个普遍的license,比如BSD-3-Clause或MIT,直接使用: { "license" : "BSD-3-Clause

96210

带你深入了解NPM——NPM初学者指南

全局包在需要添加到PATH环境变量的常规路径中创建符号链接(或快捷方式)。 NPM的经典命令 install命令只是您可以与NPM一起使用的众多命令之一。...hook:允许您配置新的NPM挂钩,当对感兴趣的进行更改时,它会通知自定义URL。...例如,通过键入以下内容可以在发布新版ExpressJS时收到通知:反过来,您可以使用该信息执行任何您喜欢的操作(例如自动更新依赖)。...ls:列出当前项目的所有已安装软件。您可以列出全局或本地安装的。在任何一种情况下,它不仅会列出package.json文件中可见的名称和版本,还会列出它们的依赖关系及其版本。...如果您将其添加为package.json文件的一部分,它将以不同且更突出的方式显示。您也可以在readme.md上提及它,但在此处添加它将为NPM提供有关您的项目的额外知识。

1.8K20

【 Node.js 进阶】你应该知道的 NPM 知识都在这!

实际使用的 shell 可能会根据系统平台而不同,类 UNIX 系统里,如 macOS 或 linux 中指代的是 /bin/sh, 在 windows 中使用的是 cmd.exe。...,也可以让我们预先定义好一些配置以供项目中使用。...先去 npm 注册个账号,然后在命令行使用 npm adduser #根据提示输入用户名密码即可 使用命令发布你的 在推送之前,可以通过配置一个 .npmignore 文件来排除一些文件, 防止大量的垃圾文件推送到...关于 npm 的更新 更新 npm 也是使用 npm publish 命令发布,不过必须更改 npm 的版本号,即 package.json 的 version 字段,否则会报错,同时我们应该遵...中创建连接执行 npm link npm-ikoala 在自己项目的 node_module 中会看到链接过来的模块,然后就可以像使用其他的模块一样使用它了。

1.4K10

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

NPM 的使用 NPM 的安装方式 1、全局安装 全局安装一般用于安装全局使用的工具,存储在全局 node_modules 中。...update 名 关于 NPM 中的 package.json 在我们创建一个项目的时候,我们项目目录下是没有 package.json 这个文件的,所以我们初始化本地后可以自动生成 npm init...在描述文件 package.json 中定义了当前项目所需要的各种模块,以及项目的配置信息(比如名称、版本、许可证等元数据)。...npm install 命令根据这个配置文件,自动下载所需的模块,也就是配置项目所需的运行和开发环境 注意点:package.json 文件中, 不能加入任何注释 在 package.json 中有两个配置需要我们注意...#将下载地址切换到淘宝 使用方式直接使用 npm install 名 即可。

45350
领券