首页 > 解决方案 > Vaadin 前端构建可重现地挂在 pnpm 安装中

问题描述

我在让我的 Vaadin 应用程序运行(在开发模式下)或完全打包(在生产模式下)时遇到问题。前者挂在“前端编译”中,后者挂在 Maven 步骤“构建前端”中,据我了解相同但在编译期间,以便可以打包编译的前端代码以进行分发)。

无论是否在前端编译或前端构建之前安装了 node.js(我尝试了两个站点),分别。在“本地安装 pnpm 4.4.0 版”步骤中失败(即永远挂起)。请参阅控制台的以下输出。

显然,Vaadin maven 插件需要一个不同的 pnpm 版本(范围 >=4.4.0,<4.6.0)而不是随节点版本安装的版本(我使用了安装 pnpm 的最新 LTS 版本 node-v14.17.0-x64.msi v6.7.1)。请参阅下面的控制台输出。

如果事先没有安装 node.js,那么 Vaadin 构建会下载并安装相同的版本 14.17.0(当然也安装相同的 pnpm 6.7.1)并以相同的错误结束。

我该怎么做才能让它工作并能够再次构建和执行 vaadin 应用程序?这一直有效,直到上周中旬,即 2021 年 5 月底,突然开始工作(尽管我没有 - 至少没有自觉地 - 在我的系统上更改与 node/npm/pnpm 相关的任何内容)。

...
[INFO] --- vaadin-maven-plugin:18.0.2:build-frontend (default) @ kstazh-monitoring ---
[INFO] Scanning classes to find frontend configurations and dependencies...
[INFO] Visited 748 classes. Took 1460 ms.
[INFO] Visited 109 classes. Took 51 ms.
[INFO] writing file D:\Projects\KStA_ZH_Monitoring\code\application\target\flow-frontend\package.json.
[INFO] writing file D:\Projects\KStA_ZH_Monitoring\code\application\target\flow-frontend\form\package.json.
[INFO] writing file 'D:\Projects\KStA_ZH_Monitoring\code\application\target\index.html'
[INFO] writing file 'D:\Projects\KStA_ZH_Monitoring\code\application\target\index.ts'
[INFO] Parsing java files from [D:\Projects\KStA_ZH_Monitoring\code\application\src\main\java]
[INFO] There are no connect endpoints to generate.
[INFO] Added 43 dependencies to main package.json
[INFO] writing file D:\Projects\KStA_ZH_Monitoring\code\application\package.json.
[INFO] Running `pnpm install` to resolve and optionally download frontend dependencies. This may take a moment, please stand by...
[INFO] Generated pnpmfile hook file: 'D:\Projects\KStA_ZH_Monitoring\code\application\pnpmfile.js'
[WARNING] installed pnpm ('C:\Users\mmo\AppData\Roaming\npm\pnpm.cmd', version 6.7.1) is not in the compatible versions range (>=4.4.0, <4.6.0)
[INFO] installing pnpm version 4.4.0 locally
[WARNING] installed pnpm ('C:\Users\mmo\AppData\Roaming\npm\pnpm.cmd', version 6.7.1) is not in the compatible versions range (>=4.4.0, <4.6.0)
[INFO] installing pnpm version 4.4.0 locally
<at this position the build hangs forever>

顺便说一句:有人知道 [4.4.0-4.6.0) 中哪个 node.js 版本带有 pnpm 版本吗?

标签: node.jsvaadinpnpm

解决方案


总结来自 GitHub 的解决方案:

从计算机上卸载所有与 node/npm/pnpm 相关的东西并重新开始解决了这个问题。这种情况可能与某些版本不兼容,某些更新搞砸了,或者某些东西没有得到正确清理有关,但没有找到确切的原因。


推荐阅读