尝鲜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 正式过期!

相关推荐
梦想CAD控件5 分钟前
在线CAD开发包结构与功能说明
前端·javascript·vue.js
张拭心10 分钟前
春节后,有些公司明确要求 AI 经验了
android·前端·人工智能
时光不负努力11 分钟前
typescript常用的dom 元素类型
前端·typescript
小怪点点16 分钟前
大文件切片上传
前端
时光不负努力17 分钟前
TS 常用工具类型
前端·javascript·typescript
SuperEugene18 分钟前
Vue状态管理扫盲篇:Vuex 到 Pinia | 为什么大家都在迁移?核心用法对比
前端·vue.js·面试
张拭心20 分钟前
Android 17 来了!新特性介绍与适配建议
android·前端
徐小夕25 分钟前
pxcharts-vue:一款专为 Vue3 打造的开源多维表格解决方案
前端·vue.js·github
Hilaku25 分钟前
我会如何考核一个在简历里大谈 AI 提效的高级前端?
前端·javascript·面试
青青家的小灰灰1 小时前
React 反模式(Anti-Patterns)排查手册:从性能杀手到逻辑陷阱
前端·javascript·react.js