Electron使用electron-builder 的配置


一下是我打包的常用配置

其他配置參考:

https://www.electron.build/configuration/configuration

https://www.electron.build/configuration/nsis

package.json配置

只提供build配置

"build": {
    "productName": "makalo-cnblog-tool",
    "appId": "com.makalo.cnblog-tool",
    "win":{
      "target": [{
        "target":"nsis"
      }],
      "icon":"build/icon/icon.ico"
    },
    "nsis": {
      "shortcutName": "makalo-cnblog-tool",
      "oneClick": false,
      "allowElevation": true,
      "allowToChangeInstallationDirectory": true,
      "perMachine": true,
      "include": "./build/installer.nsh"
    }
  },
  • productName 項目名 這也是生成的exe文件的前綴名
  • appId 包名
  • win 構建win的選項
    • target 目標封裝類型,默認使用niss,win平台一般也是用這個,可寫可不寫
    • icon 自定義圖標路徑 ,如果不指定就用electron默認圖標
  • nsis niss工具配置,niss一般用來配置安裝和卸載程序的,
    • shortcutName 用於所有快捷方式的名稱。默認為應用程序名稱。
    • oneClick 是創建一鍵安裝程序還是輔助安裝程序
    • allowElevation 僅輔助安裝程序有效。允許請求提升。如果為false,則用戶將不得不以提升的權限重新啟動安裝程序
    • allowToChangeInstallationDirectory 僅輔助安裝程序有效。是否允許用戶更改安裝目錄。
    • perMachine 是否開啟安裝時權限限制(此電腦或當前用戶)true 表示此電腦,false代表當前用戶
    • include NSIS包含定制安裝程序腳本的路徑。默認為build/installer.nsh

常用NISS腳本

;安裝時寫入
!macro customInstall
    WriteRegStr HKCR "*\shell\makalo-cnblog-tool-read" "" "ssss"
    WriteRegStr HKCR "*\shell\makalo-cnblog-tool-read" "Icon" "$INSTDIR\makalo-cnblog-tool.exe"
    WriteRegStr HKCR "*\shell\makalo-cnblog-tool-read\command" "" '"$INSTDIR\makalo-cnblog-tool.exe" "read" "%1"'
    WriteRegStr HKCR "*\shell\makalo-cnblog-tool-upload" "" "sssss"
    WriteRegStr HKCR "*\shell\makalo-cnblog-tool-upload" "Icon" "$INSTDIR\makalo-cnblog-tool.exe"
    WriteRegStr HKCR "*\shell\makalo-cnblog-tool-upload\command" "" '"$INSTDIR\makalo-cnblog-tool.exe" "upload" "%1"'
!macroend
;卸載時清除
!macro customUninstall
    DeleteRegKey HKCR "*\shell\makalo-cnblog-tool-read"
    DeleteRegKey HKCR "*\shell\makalo-cnblog-tool-upload"
!macroend

;修改默認安裝路徑
!macro preInit
    SetRegView 64
    WriteRegExpandStr HKLM "${INSTALL_REGISTRY_KEY}" InstallLocation "C:\makalo-cnblog-tool"
    WriteRegExpandStr HKCU "${INSTALL_REGISTRY_KEY}" InstallLocation "C:\makalo-cnblog-tool"
    SetRegView 32
    WriteRegExpandStr HKLM "${INSTALL_REGISTRY_KEY}" InstallLocation "C:\makalo-cnblog-tool"
    WriteRegExpandStr HKCU "${INSTALL_REGISTRY_KEY}" InstallLocation "C:\makalo-cnblog-tool"
!macroend

關於files選項

從我觀察的到的情況來看,electron build默認會將你應用目錄的所有文件打包進去,但是關於依賴只會打包相關的生產依賴,但是如果你項目有要保存的文件你有不想打包進去呢?比如描述文檔,以前版本的應用,那怎么配置呢?這就需要files選項了

參考:

https://www.electron.build/configuration/contents#files

例:配置項目目錄下的 exe,.gitee文件夾和所有的README開頭的文件不用打包進去

"files" : [
      "!exe",
      "!.gitee",
      "!README.*"
    ],

注意

  • files配置項要在build配置項底下
  • 配置項不止可以配置不打包哪些文件或文件夾,也可以將制定目錄的文件復制到指定的應用目錄中,具體參考extraResources


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM