Electron-Builder打包时报错could not find: “C:\Users\XX\AppData\Local\Temp\t-bDWVX6\0-messages.nsh”

项目情况

项目基于VUE,使用VUE-cli 3创建,然后执行

vue add electron-builder

添加Electron-Builder

问题描述

在执行

npm run electron:build

的时候,会打包失败,错误日志如下(敏感信息已打码),

{ Error: C:\Users\{我的windows账户名}\AppData\Local\electron-builder\Cache\nsis\nsis-3.0.4.1\Bin\makensis.exe exited with code ERR_ELECTRON_BUILDER_CANNOT_EXECUTE
Output:Output:
Command line defined: "APP_ID=com.electron.{我的项目名称}"
Command line defined: "APP_GUID=c587bd21-8cd2-5b34-93a3-ad3ca404cd06"
Command line defined: "UNINSTALL_APP_KEY=c587bd21-8cd2-5b34-93a3-ad3ca404cd06"
Command line defined: "PRODUCT_NAME={我的项目名称}"
Command line defined: "PRODUCT_FILENAME={我的项目名称}"
Command line defined: "APP_FILENAME={我的项目名称}"
Command line defined: "APP_DESCRIPTION="
Command line defined: "VERSION=0.1.0"
Command line defined: "PROJECT_DIR=D:\Test\{我的项目名称}"
Command line defined: "BUILD_RESOURCES_DIR=D:\Test\{我的项目名称}\build"
Command line defined: "APP_PACKAGE_NAME={我的项目名称}"
Command line defined: "APP_64=D:\Test\{我的项目名称}\dist_electron\{我的项目名称}-0.1.0-x64.nsis.7z"
Command line defined: "APP_64_NAME={我的项目名称}-0.1.0-x64.nsis.7z"
Command line defined: "APP_64_HASH=8EE6D7EDADFDD46851BD6424FB67BD9E98CD6B405D6B319E3DD582FF7DED068210BD65C46FD93EB98D0DBD012D447DA4E0AD599DFC6A2BD62993EACC16BD3F64"
Command line defined: "APP_INSTALLER_STORE_FILE={我的项目名称}-updater\installer.exe"
Command line defined: "COMPRESSION_METHOD=7z"
Command line defined: "ONE_CLICK"
Command line defined: "RUN_AFTER_FINISH"
Command line defined: "SHORTCUT_NAME={我的项目名称}"
Command line defined: "UNINSTALL_DISPLAY_NAME={我的项目名称} 0.1.0"
Command line defined: "ESTIMATED_SIZE=159797"
Command line defined: "COMPRESS=auto"
Command line defined: "BUILD_UNINSTALLER"
Command line defined: "UNINSTALLER_OUT_FILE=D:\Test\{我的项目名称}\dist_electron\__uninstaller-nsis-{我的项目名称}.exe"
Processing config: C:\Users\��\AppData\Local\electron-builder\Cache\nsis\nsis-3.0.4.1\nsisconf.nsh
Processing script file: "<stdin>" (ACP)Error output:Error output:
!include: could not find: "C:\Users\{我的windows账户名}\AppData\Local\Temp\t-bDWVX6\0-messages.nsh"
Error in script "<stdin>" on line 75 -- aborting creation processat ChildProcess.childProcess.once.code (D:\Test\{我的项目名称}\node_modules\builder-util\src\util.ts:243:14)at Object.onceWrapper (events.js:273:13)at ChildProcess.emit (events.js:182:13)at maybeClose (internal/child_process.js:978:16)at Process.ChildProcess._handle.onexit (internal/child_process.js:265:5)exitCode: 1,alreadyLogged: false,code: 'ERR_ELECTRON_BUILDER_CANNOT_EXECUTE' }
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! {我的项目名称}@0.1.0 electron:build: `vue-cli-service electron:build`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the {我的项目名称}@0.1.0 electron:build script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Users\{我的windows账户名}\AppData\Roaming\npm-cache\_logs\2020-12-16T05_39_35_234Z-debug.log

从错误日志上来看,产生此错误的原因是,nsis插件找不到了。但是我打开对应目录,很明显,nsis是存在的。然后我发现一个关键点,那就是路径中出现了乱码

Processing config: C:\Users\��\AppData\Local\electron-builder\Cache\nsis\nsis-3.0.4.1\nsisconf.nsh

显然,是因为我的windows账户名是中文,但是在打包过程中,有某些插件不能正确识别中文导致的。
问题的根源已经找到了。怎么办呢。别人出现这个问题,都是项目名称或者路径里出现了中文,改掉就是了,我这个是AppData文件夹路径出现中文,怎么改?

处理办法我想到了以下几个

  1. 改windows用户名,改成英文,此办法一劳永逸。一次修改终身受益。后来发现,工程量有点大,并不是简单的改名字就能解决的,还要去修改对应的很多注册表的键值,风险有点高。我没敢尝试。
  2. 修改环境变量的,使AppData文件夹路径中不存在中文即可。后来发现,工程量也不小,而且修改环境变量的风险也不小,可能会导致其他的一下项目出现问题。也没敢尝试。
  3. 剩下的办法,那就只能是让插件支持中文了。问题是怎么改才能让它支持中文。

经过一系列的baidu,google,bing。终于,在一篇博文中发现了解决方案。

打开 node_module/app-builder-lib/out/targets/nsis/NsisTarget.js文件,在 executeMakensis 方法中加入我们所需的参数。

//node_module/app-builder-lib/out/targets/nsis/NsisTarget.js
async executeMakensis(defines, commands, script) {const args = this.options.warningsAsErrors === false ? [] : ["-WX"];//此处新增args.push("-INPUTCHARSET", "UTF8");//结束for (const name of Object.keys(defines)) {const value = defines[name];if (value == null) {args.push(`-D${name}`);} else {args.push(`-D${name}=${value}`);}}

经测试,问题完美解决

附原博文地址:https://www.azimiao.com/6250.html

Electron-Builder打包时报错could not find: “C:\Users\XX\AppData\Local\Temp\t-bDWVX6\0-messages.nsh“相关推荐

  1. electron打包时报错could not find: “C:\Users\xxxx\AppData\Local\Temp\t-OLh5E0\0-messages.nsh“

    原文博客地址:https://blog.csdn.net/kyq0417/article/details/111266776 原因 用户名中文名导致的 解决办法 打开 node_module/app- ...

  2. svn获取代码时报错【 C:\Users\ADMINI~1\APPData\Loca\Temp\svn.... 找不到指定路径】

    获取代码时报错:C:\Users\ADMINI~1\APPData\Loca\Temp\svn- 找不到指定路径 解决办法:清理原始副本

  3. Spark 报错 Failed to delete: C:\Users\lvacz\AppData\Local\Temp\spark-*

    一.问题 在win10,local模式执行完spark任务后不论是否可以执行出结果,都会报错: Failed to delete: C:\Users\lvacz\AppData\Local\Temp\ ...

  4. Python3导入scrapy报错1 in C:\Users\ADMINI~1\AppData\Local\Temp\pip-install-831gxniz\Twisted\

    在用scrapy框架实现爬虫时,scrapy导包报错: Command "D:\Python\Anaconda\python.exe -u -c "import setuptool ...

  5. electron packager打包报错: EBUSY: resource busy or locked

    electron 使用packager 打包时报错: EBUSY: resource busy or locked 查找资料解决问题:后台进程里开了好几个exe文件 快捷键 ctrl+Alt+. 或在 ...

  6. electron builder 打包错误 cannot unpack electron zip file 解决方案

    electron builder 打包错误 cannot unpack electron zip file 解决方案 参考文章: (1)electron builder 打包错误 cannot unp ...

  7. uniapp 打包时报错:云端服务器返回错误,此应用DClound的Appdid非当前账号所有。

    打包时报错:云端服务器返回错误,此应用DClound的Appdid非当前账号所有. 解决方案:当前项目创建时跟目前打包的DClound账号不一样,需要重新获取一下. 点击manifest.json = ...

  8. electron项目打包报错

    electron项目打包报错 打包下载错误 Error: getaddrinfo ENOENT github-production-release-asset-2e65be.s3.amazonaws. ...

  9. 第三方SDK在maven打包时报错

    引入第三方SDK在打包的时候出现错误该如何处理 在最近的一个项目中引入了第三方的SDK但是在打包却提示找不到jar包因为我是外部引用的具体引用方式如下 这里路径指向对应的jar包即可导入,但是在打包时 ...

最新文章

  1. 用split分割文件和数据(笔记)
  2. typedef、setw()
  3. UVa11427 Expect the Expected
  4. JavaWeb黑马旅游网-学习笔记09【旅游线路收藏】
  5. 以OpenCV为例配置VS第三方库
  6. 【资料整理】proftpd安装配置
  7. bootstrap弹出的模态框水平垂直居中的实现
  8. echarts中x轴文件消失_百度Echarts图表在Vue项目的完整引入以及按需加载
  9. 百会项目与redmine的对比
  10. LabVIEW安装第三方VISA软件后NI VISA失效
  11. 《智能车制作》这本书已经把平衡车的控制原理讲得很清楚了!附上其他书讲平衡车的部分。
  12. 使用Nhibernate.Tool.Hbm2Net来根据HBML文件生成POJO类的代码
  13. 传输速率和传播速率的理解
  14. Linux: sd 0:0:1:0: timing out command, waited 1080s, 访问磁盘错误
  15. 虚拟服务器共享文件夹禁用,虚拟机共享文件夹禁用,vm虚拟机共享文件夹
  16. 强化学习蘑菇书Easy RL第一章
  17. Windows远程桌面提示CredSSP加密数据库修正
  18. python isinstance得用法记录
  19. 2010-2020年和讯网分省份社会责任数据
  20. 小米8 se图片备份到电脑上

热门文章

  1. 虚拟服务器liter,liter_sheng
  2. 发现一个微博图床API和图片上传代码
  3. python下载博文中微博图床图片
  4. JPEG/Exif/TIFF格式解读(1):JEPG图片压缩与存储原理分析
  5. java.net.ConnectException: [NACOS HTTP-POST] The maximum number of tolerable server reconnection err
  6. 移动端APP测试总结--转
  7. cad刷新快捷键_CAD快捷键大全清单,送给每一位CAD初学者,非常实用的干货
  8. PS 如何制作 圆角矩形 图片
  9. ReactNative动画之Animated初识篇
  10. 手机APP如何访问局域网服务器