使用create-react-app与electron-builder时遇SyntaxError错误求助
解决Windows下electron-builder运行语法错误的问题
看起来你踩了Windows和Unix shell脚本不兼容的坑!这个错误是因为你在Windows系统里用node node_modules\.bin\electron-builder去执行了electron-builder的Shell脚本(.sh文件),而Windows的Node.js环境没法解析dirname、sed这类Unix系统的命令语法,所以才抛出了SyntaxError: missing ) after argument list的错误。
这里给你几个靠谱的解决办法:
用npm脚本调用(最推荐):
在你的package.json里添加一个打包脚本,比如:"scripts": { "electron-pack": "electron-builder" }然后在终端里直接运行:
npm run electron-packnpm会自动根据你的系统环境,调用对应的electron-builder可执行文件(Windows下是.cmd,Unix下是.sh),完全不用你手动处理路径和脚本类型的问题。
直接调用Windows专属的.cmd文件:
如果一定要手动调用本地依赖里的electron-builder,Windows下直接运行:node_modules\.bin\electron-builder.cmd不用在前面加
node,因为这个.cmd文件本身就是Windows可以直接执行的脚本。额外检查配置:
别忘了确认你的package.json里已经正确配置了electron的必要字段,比如:main字段:指向你的electron主进程入口文件(比如public/electron.js)build字段:配置打包的appId、文件范围等参数,示例:"build": { "appId": "com.yourcompany.yourapp", "files": ["build/**/*", "node_modules/**/*"], "directories": { "buildResources": "assets" } }
这样操作后,应该就能正常运行electron-builder打包你的React+Electron应用了。
内容的提问来源于stack exchange,提问作者Lance
相关产品推荐
相关产品推荐

