尝鲜Electron29.0.1翻车记录,淘宝源不完全背锅

背景:

2024年2月21日,最新的Electron v29.0.1长期支持发布。本着追求更新、更快、更强的原则果断更新,计划5分钟内解决战斗,然而一直报RequestError: certificate has expired的错误。再三确认淘宝源更换为最新地址!!!

pnpm update //修改package.json "electron": "^29.0.1",

pnpm install electron@v29.0.1

甚至大哥我安装 robotjs 模块,你Electron报啥子错,还是 v28.2.4版!都报一样的 RequestError: certificate has expired(请求错误:证书已过期)

〇、一击必中

🫠来自采坑后的自信。
问题描述 确认淘宝源更换为最新地址,同样尝试了清空pnpm缓存、清除代理、更换镜像、跳过SSL验证,仍然是RequestError: certificate has expired...

js 复制代码
//配置最新的淘宝镜像源 
pnpm config set registry https://registry.npmmirror.com

原因 Electron使用了自定义镜像,当使用pnpm、npm、cpnm切换npm镜像源时,ELECTRON_MIRROR的值并没有被修改,例如pnpm 使用pnpm config list查看。

建议 例如淘宝镜像源执行以下两条语句,单独为Electron执行一次配置electron_mirror

多执行 pnpm config list 查看是否成功。

js 复制代码
//配置 单独为Electron执行一次配置`electron_mirror`
pnpm config set electron_mirror https://registry.npmmirror.com/-/binary/electron/

一、翻车收获

1.安装其他模块时,例如pnpm install robotjs时,为啥是electron证书报错

在底层, Electron 的 JavaScript API 绑定了包含默认实现的二进制文件。 每次当你从 npm 注册表安装 electron 时,默认情况下都会在 postinstall 步骤中下载该二进制文件。

你可以设置 ELECTRON_SKIP_BINARY_DOWNLOAD 环境变量为1来阻止二进制文件被下载。 例如,在运行模拟 electron 模块的单元测试时,此功能在连续集成环境中很有用。

下图临时在在当前 CMD 会话中设置环境变量。仅在当前命令行窗口有效,关闭窗口后环境变量失效。

长期设置需要 配置window系统环境变量。

2.pnpm配置环境变量,在修改什么文件

pnpm config set registry registry.npmmirror.com 我这里是 C:\Users\25051.npmrc 被修改,可以观察到修改时间的变化

3.pnpm常见命令

查看pnpm安装位置 pnpm root -g

其他pnpm常见命令 pnpm 的常见命令,全局命令通常加上-g,例如:

全局安装模块pnpm install -g <模块>

1.安装

shell 复制代码
pnpm install <模块> // 简写为 pnpm i
pnpm install <模块>@<version> //特定版本 pnpm install electron@v29.0.1

2.卸载

shell 复制代码
pnpm uninstall <模块> //简写为 pnpm rm <模块>

**3.更新**
```shell pnpm update //根据package.json更新,简写为 pnpm up pnpm update --latest //更新至最新版本 pnpm update <模块> // 更新指定<模块>至最新 ```

4.运行

shell 复制代码
pnpm run <script-name> // 运行 package.json 中的脚本
pnpm <script-name>   //直接运行脚本别名

pnpm run start

pnpm start //以上的简写 pnpm 百万牛牛 //在package.json中配置的别名

4.常见的npm镜像源

常用的 npm 源主要包括以下几个:

  1. 官方源

  2. 国内镜像源

  3. 其他公共镜像源

在国内由于网络问题,使用国内的镜像源可以显著提高下载速度和稳定性。需要注意的是,各个镜像站都承诺定期同步官方源的数据,但由于同步策略和延迟的原因,可能存在一些新版包在官方源上线后一段时间才在镜像源上可用的情况。此外,对于私有模块,仍然需要直接连接到官方源才能获取和发布。

二、参考

1.CSDN。Electron项目使用yarn/npm/cnpm时报certificate has expired...的问题

2.官方.Electron安装指导

3.AI.通义千问

4.2024 年 1 月 22 日,淘宝源 HTTPS 正式过期!

相关推荐
freeWayWalker1 分钟前
Vue通用缩放容器
前端·javascript·vue.js
Hello--_--World9 分钟前
VUE:逻辑复用
前端·javascript·vue.js
陶甜也25 分钟前
3D智慧城市:blender建模、骨骼、动画、VUE、threeJs引入渲染,飞行视角,涟漪、人物行走
前端·3d·vue·blender·threejs·模型
患得患失94930 分钟前
【前端websocket】企业级功能清单
前端·websocket·网络协议
落魄江湖行31 分钟前
基础篇四 Nuxt4 全局样式与 CSS 模块
前端·css·typescript·nuxt4
禅思院31 分钟前
前端性能优化:从"术"到"道"的完整修炼指南
前端·架构·前端框架
架构师老Y2 小时前
003、Python Web框架深度对比:Django vs Flask vs FastAPI
前端·python·django
小陈工4 小时前
Python Web开发入门(十七):Vue.js与Python后端集成——让前后端真正“握手言和“
开发语言·前端·javascript·数据库·vue.js·人工智能·python
研究点啥好呢9 小时前
Github热门项目推荐 | 创建你的像素风格!
c++·python·node.js·github·开源软件
xiaotao1319 小时前
第九章:Vite API 参考手册
前端·vite·前端打包