electron 打包支持32位

自己項目中用的打包命令:yarn dist

重點(diǎn)說明:這樣配置:win32位和win64位都可以滿足,部分win32的需要手動改一下兼容模式,要用兼容模式運(yùn)行。

"scripts": {
    "start": "electron .",
    "pack": "electron-builder --dir",
    "package": "electron-packager ./ myapp --out ./OutApp --overwrite",
    "dist": "electron-builder --win --ia32"
  },

electron是一種可以將網(wǎng)頁打包成桌面程序的技術(shù),可以根據(jù)配置的參數(shù)不同打包win,mac,linux三種平臺的安裝文件,具體的配置方式在項目的package.json文件中,下面是electron-vue項目package.json文件中的一段配置

"scripts": {
    "build": "node .electron-vue/build.js && electron-builder --platform=win32 --arch=ia32",
    "build:dir": "node .electron-vue/build.js && electron-builder --dir",
    "build:clean": "cross-env BUILD_TARGET=clean node .electron-vue/build.js",
    "build:web": "cross-env BUILD_TARGET=web node .electron-vue/build.js",
    "dev": "node .electron-vue/dev-runner.js",
    "pack": "npm run pack:main && npm run pack:renderer",
    "pack:main": "cross-env NODE_ENV=production webpack --progress --colors --config .electron-vue/webpack.main.config.js",
    "pack:renderer": "cross-env NODE_ENV=production webpack --progress --colors --config .electron-vue/webpack.renderer.config.js",
    "postinstall": "install-app-deps"
  }

其中--platform是配置打包成什么平臺的安裝文件,下面是可選的值

win系統(tǒng): win或者win32,即--platform=win或者--platform=win32
mac系統(tǒng):mac或者darwin,即--platform=mac或者--platform=darwin
Linux系統(tǒng):linux, 即--platform=linux
所有平臺:all, 即--platform=all
其中--arch是指定系統(tǒng)是什么架構(gòu)的,常見的例如32位和64位操作系統(tǒng),這個參數(shù)的可選值有

ia32, 即--arch=ia32, 32位操作系統(tǒng),也可以在64位操作系統(tǒng)中安裝
x64, 即--arch=x64, 64位操作系統(tǒng),使用本架構(gòu)打包無法再32位操作系統(tǒng)中安裝
armv7l, 即--arch=armv7l, 使用比較少
arm64, 即--arch=arm64, 使用比較少
參數(shù)--platform和--arch已經(jīng)被標(biāo)志為過期,新的寫法如下

electron-builder --win --x64
electron-builder --win --ia32
electron-builder --win --armv7l

如果--platform和--arch兩個參數(shù)都沒有指定,那么在打包的時候會參考當(dāng)前操作系統(tǒng)的架構(gòu)和平臺進(jìn)行打包,也就是說,以下命令如果在不同的操作系統(tǒng)上運(yùn)行結(jié)果也是不一樣的

electron-builder

補(bǔ)充:


image.png
"win": {
  "icon": "icons/icon.ico",
  "target": [
    {
      "target": "nsis",
      "arch": [ // 這個意思是打出來32 bit + 64 bit的包。這樣打包出來的安裝包體積比較大,建議直接打32的安裝包。
        //"x64",
        "ia32"
      ]
    }
  ]
}

補(bǔ)充2:

module.exports = {
  //判斷開發(fā)模式還是生產(chǎn)模式
  publicPath: process.env.NODE_ENV === 'production' ? './' : '/',
  //插件配置
  pluginOptions: {
    //electronBuilder配置
    electronBuilder: {
      builderOptions: {
        'productName': 'all electron',//生成exe的名字
        "appId": "com.xi.www",//包名  
        "copyright": "xi",//版權(quán)信息
        "directories": { // 輸出文件夾
          "output": "electron_output",
        },
        "nsis": {
          "oneClick": false, // 是否一鍵安裝
          "allowElevation": true, // 允許請求提升。若為false,則用戶必須使用提升的權(quán)限重新啟動安裝程序。
          "allowToChangeInstallationDirectory": true, //是否允許修改安裝目錄
          "installerIcon": "./build/icons/icon.ico",// 安裝時圖標(biāo)
          "uninstallerIcon": "./build/icons/icon.ico",//卸載時圖標(biāo)
          "installerHeaderIcon": "./build/icons/icon.ico", // 安裝時頭部圖標(biāo)
          "createDesktopShortcut": true, // 是否創(chuàng)建桌面圖標(biāo)
          "createStartMenuShortcut": true,// 是否創(chuàng)建開始菜單圖標(biāo)
          "shortcutName": "all-electron", // 快捷方式名稱
          "runAfterFinish": false,//是否安裝完成后運(yùn)行
        },
        "win": {
          "icon": "build/icons/icon.ico",//圖標(biāo)路徑
          "target": [
            {
              "target": "nsis", //利用nsis制作安裝程序
              "arch": [
                "x64", //64位
                // "ia32" //32位
              ]
            }
          ]
        }
      }
    }
  }
}

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容