问题标签 [yarnpkg-v2]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
42 浏览

docker - 仅从 .yarn/cache 获取生产依赖项以构建 Docker 映像

我会使用多阶段构建 Docker 映像。我们正在使用 yarn 2 和零安装功能,它将依赖项以 zip 格式存储在 .yarn/cache 中。

为了最小化我的 Docker 映像的大小,我只想拥有生产依赖项。以前,我们会做

但是通过使用以前版本的 yarn,我们不会从 .yarn/cache 文件夹中受益,并且下载依赖项需要时间,而这里已经有依赖项,但以前版本的 yarn 无法读取。

有没有办法告诉 yarn 2 从 .yarn/cache 文件夹中仅获取生产依赖项并将其放入另一个文件夹中?因此,我可以将这个文件夹复制到我的图像中并节省时间和空间。

0 投票
0 回答
24 浏览

yarnpkg - Yarn 2 Constraints 功能可以阻止软件包的安装吗?

我有一个很深的依赖树。一些包依赖于我不需要的 nodejs 包。Yarn 2 (berry) 是否可以跳过这些包,即不安装它们?

Yarn 有一个约束功能,但我不知道它有什么可能。有一些例子,但不是完全忽略一个包。

这可能吗?谢谢

0 投票
0 回答
184 浏览

node.js - 迁移到 Yarn 2,但找不到 Yarn 命令“set”和“policies”

我正在尝试将项目迁移到 Yarn 2,就像它在他们的网站上描述的那样:https ://yarnpkg.com/getting-started/migration

当我运行时,yarn set version berry我收到此错误:

这篇github 论坛帖子说“确保使用 Yarn 1.22 作为全局二进制文件,或者改用 yarn 策略 set-version。” 我试着打字yarn policies set-version berry然后我得到同样的错误:

我正在使用 Windows 7
节点 -v 显示 13.14.0
纱线 -v 显示 1.7.0

0 投票
2 回答
1093 浏览

patch - 修补 npm 包时出现错误

当我修补这样的依赖项时:

package.json

patches/react-native-webview+11.0.3.patch

yarn当我使用或在本地安装东西时一切正常yarn install。补丁被应用,并且没有错误。

但是,当事情进入 CI 时,我收到如下错误:

如果我将补丁更改为使用a/node_modules/react-native-webview/apple/RNCWebView.m. 然后我得到一个错误

0 投票
0 回答
26 浏览

javascript - 完成项目后“无法获取/”,yarn创建了项目

这是终端图片
所以每当我使用yarn init制作我的项目并设置项目然后当我运行| webpack 开发服务器 | 在我的终端中打开我的本地主机 http://localhost:8080 我看到消息“无法获取 /”而不是我调用的函数。

谢谢 :)

index.js

包.json

索引.html

0 投票
0 回答
19 浏览

yarnpkg - 有什么方法可以构建一个通用包并将其安装在 monorepo 中?

我目前有一个工作区(Yarn v3.0.2),其中有 3 个项目,其中 2 个项目依赖于其中一个公共项目。在将公共项目安装到相关项目的相应 node_modules 文件夹之前,有什么好的方法可以构建我的公共项目吗?

0 投票
1 回答
290 浏览

node.js - Yarn 3 和 Node 17:文件扩展名解析失败?

在使用 Yarn Plug'n'Play 升级到 Yarn 3.0 后(抛出 node_modules),我在启动 Node.js 时开始遇到文件名解析问题。

成功启动后server.js,它会尝试解析项目中第一个导入的文件,称为util.js,但路径解析失败,除非我明确添加.js到文件名。我宁愿不必更新项目范围内的所有路径。

我可以让 Yarn 和 Node.js自动解析文件扩展名吗?

纱线3.1.0,节点17.0.1

错误信息:

0 投票
1 回答
183 浏览

yarnpkg - yarn berry foreach 工作空间未按 package.json 中指定的顺序构建包

在 Yarn 1 中,yarn workspaces run build将使用文件workspaces字段中指定的顺序package.json来构建每个包。

例如,如果我有这样指定的订单:

然后packages/c才会建之前packages/b

在 Yarn 3 中,packages/b正在构建之前packages/c将无法正常工作,因为我需要packages/c在其他所有内容之前构建。

有没有解决的办法?

0 投票
1 回答
683 浏览

azure-devops - 如何在 azure devops 管道代理中安装 yarn@2

我正在 azure devops 中设置构建管道。有一个名为 YarnInstaller@3 的辅助任务允许我安装特定版本的 Yarn。但是,列出的唯一可用版本是 1.x,最新的是 1.22。

https://yarnpkg.com/getting-started/install上有迁移说明,用于从 v1 迁移到 v2+,我已经在本地完成了。由于只有 yarn@1.x 可用,看来我每次运行构建时都必须迁移,例如

  • 安装纱线 1
  • 将版本设置为浆果
  • 纱线套装版本最新
  • 然后像往常一样运行纱线命令

这似乎没有必要,特别是因为我已经提交了.yarnrc.yml.yarn子目录。我错了吗?还有另一种方法可以在我的管道中安装 yarn@2+ 吗?

0 投票
1 回答
45 浏览

continuous-integration - 如何在 yarn2+ 中设置纱线版本配置?

我正在将我的项目从 yarn1 转移到 yarn2+。
我正在使用 yarn 来提升 monorepo 中的包版本,并使用命令设置配置版本选项,例如yarn config set version-git-message在我的 ci 管道中。

但是,使用 yarn2+ 我收到一条错误消息Couldn't find a configuration settings named "version-git-message"

我的第一个问题是,是否可以设置纱线版本配置选项version-git-message,例如version-commit-hooks使用 yarn2+ ?

如果没有,我将如何完成设置这些版本配置选项?

作为参考,以下是我在 CI 管道中使用的脚本