从错误日志上来看,产生此错误的原因是,nsis插件找不到了。但是我打开对应目录,很明显,nsis是存在的。然后我发现一个关键点,那就是路径中出现了乱码
Processing config: C:\Users\��\AppData\Local\electron-builder\Cache\nsis\nsis-3.0.4.1\nsisconf.nsh
打开 node_modules/app-builder-lib/out/targets/nsis/NsisTarget.js文件,在 executeMakensis 方法中加入我们所需的参数。(这个文件的在项目中node_modules中app-builder-lib中
//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}`);
}
}
经测试,问题完美解决