• electron应用打包成功纪念一下


    electron应用打包成功纪念一下,以前曾经行过后来打包各种报错,现在有空就尝试解决一下

    首先安装nvm能够方便切换node版本

    curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.34.0/install.sh | bash

    顺利安装后你用nvm list查看node列表时会告诉你这个nvm不存在

    1. 解决办法: source ~/.bashrc
    2. 接着执行nvm list可以,然后安装需要的版本
    3. npm install 8.16.2

    回到最初版本然后打包看各种错误

    1. error while loading shared libraries: libgconf-2.so.4
    2. sudo apt-get install libgconf-2-4
    1. Error retrieving accessibility bus address: org.freedesktop.DBus.Error.ServiceUnknown: The name org.a11y.Bus was not provided by any .service
    2. sudo apt-get install at-spi2-core

    还有一种错误是定位到js文件catch后面的{,这时只需要再catch后增加(e)

    联系更新了好多个js文件

    运行报错 ReferenceError: process is not defined

    1. 打开webpack.renderer.config.js文件,如下所示进行修改
    2. new HtmlWebpackPlugin({
    3. filename: 'index.html',
    4. template: path.resolve(__dirname, '../src/index.ejs'),
    5. minify: {
    6. collapseWhitespace: true,
    7. removeAttributeQuotes: true,
    8. removeComments: true
    9. },
    10. # 增加templateParameters配置项 start
    11. templateParameters(compilation, assets, options) {
    12. return {
    13. compilation: compilation,
    14. webpack: compilation.getStats().toJson(),
    15. webpackConfig: compilation.options,
    16. htmlWebpackPlugin: {
    17. files: assets,
    18. options: options
    19. },
    20. process,
    21. };
    22. },
    23. # 增加templateParameters配置项 end
    24. nodeModules: process.env.NODE_ENV !== 'production'
    25. ? path.resolve(__dirname, '../node_modules')
    26. : false
    27. }),
    28. 打开webpack.web.config.js文件,如下所示进行修改
    29. new HtmlWebpackPlugin({
    30. filename: 'index.html',
    31. template: path.resolve(__dirname, '../src/index.ejs'),
    32. # 增加templateParameters配置项 start
    33. templateParameters(compilation, assets, options) {
    34. return {
    35. compilation: compilation,
    36. webpack: compilation.getStats().toJson(),
    37. webpackConfig: compilation.options,
    38. htmlWebpackPlugin: {
    39. files: assets,
    40. options: options
    41. },
    42. process,
    43. };
    44. },
    45. # 增加templateParameters配置项 end
    46. minify: {
    47. collapseWhitespace: true,
    48. removeAttributeQuotes: true,
    49. removeComments: true
    50. },
    51. nodeModules: false
    52. }),

    最后终于改完错误,开始下载依赖,发现很慢

    1. npm config set registry https://registry.npmmirror.com
    2. electron 下载慢 修改 .npmrc 增加
    3. electron_mirror="https://npm.taobao.org/mirrors/electron/"
    4. ELECTRON_MIRROR="https://npm.taobao.org/mirrors/electron/"

    第一次打包下载https://github.com/electron/electron/releases/download/v2.0.18/electron-v2.0.18-linux-x64.zip 如果比较慢,自己下载放到.cache/electron文件夹下

    最后终于打包成功

  • 相关阅读:
    OpenCV-Python常用操作
    【数据结构与算法】顺序表
    java计算机毕业设计企业公开招聘系统源程序+mysql+系统+lw文档+远程调试
    Linux--线程 创建、等待、退出
    顺序栈(数组模拟)
    (十四)引入负载均衡器
    【推荐收藏】这8个常用缺失值填充技巧一定要掌握
    JavaScript混淆工具大比拼:JScrambler和JShaman哪个更胜一筹?
    BLDC电机控制算法例程
    在 Rust 中实现 TCP : 1. 联通内核与用户空间的桥梁
  • 原文地址:https://blog.csdn.net/qiaozhangchi/article/details/132604291