LOGO OA教程 ERP教程 模切知識(shí)交流 PMS教程 CRM教程 開發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

Astra 橫空出世,真的是 JS 腳本轉(zhuǎn)換為 EXE 程序的未來嗎?

admin
2025年6月22日 0:40 本文熱度 123

為什么選擇 Astra

Astra 可能是 npm 上最好的編譯器,平均 exe 文件大小約為 70-80MB(當(dāng)然也取決于代碼),比大多數(shù)編譯器都輕量。

當(dāng)然,如果借助于 upx 可以將文件大小壓縮到約 30MB,其旨在編譯服務(wù)器(express、fastify)或命令行界面(commander),因此并非 Electron 的替代品。

Astra 的典型特性包括:

  • 編譯 JavaScript/TypeScript 應(yīng)用程序的新方法,使用的方法與 pkg 或 nexe 等其他編譯器不同
  • 支持最新版本的 Node.js
  • Astra 由 esbuild 提供支持,可確保最快的編譯速度
  • 支持編譯基于 ESM 的應(yīng)用程序,解決了 Node.js SEA 中的諸多限制
  • Astra 借助 signale、inquirer 和 chalk 等工具,提供卓越的開發(fā)者體驗(yàn)
  • 生成獨(dú)立的可執(zhí)行文件,包含所有依賴項(xiàng)的單個(gè) .exe 或二進(jìn)制文件
  • 支持創(chuàng)建開發(fā)者自己的 exe 文件,例如:修改生成的可執(zhí)行文件的元數(shù)據(jù)(圖標(biāo)、名稱、版本等)
  • 面向未來 ,使用值得信賴且不斷發(fā)展的工具構(gòu)建

值得一提的是,Astra 目前只能編譯 Windows 應(yīng)用程序,macOS 和 Linux 系統(tǒng)目前還在積極支持中。

目前 Astra 通過 MIT 協(xié)議開源,短短幾周已經(jīng)有超過 0.8k 的 star,是一個(gè)值得關(guān)注的前端開源項(xiàng)目。

如何使用 Astra

開發(fā)者可以借助于 yarn 或者 npm 快速上手:

# npmnpm i -g astra-cli# yarn (classic)yarn global add astra-cli# pnpmpnpm add -g astra-cli# for one project only# npmnpm i --save-dev astra-cli# yarnyarn add --dev astra-cli# pnpmpnpm add -D astra-cli

接著使用下面命令編譯 JavaScript/TypeScript 項(xiàng)目:

astra build src/index.js

開發(fā)者還可以通過 config 中的 assets 字段來隱藏二進(jìn)制文件中的部分資源,例如:

// astra.config.jsexport default {  assets: {    "path/in/binary.txt""path/to/asset.txt",  },};

接著可以通過下面的方式訪問 assets:

import {getAssetAsBlob, getAsset, isSea} from "node:sea";import fs from "fs";    if (isSea()) {        // get asset as text        console.log(getAsset("file.txt""utf-8"));        // or        console.log(await getAssetAsBlob("file.txt").text());        // get asset as blob        const arrayBuffer = await getAssetAsBlob("file.png").arrayBuffer();        fs.writeFileSync("file.png"Buffer.from(arrayBuffer));    }})();

astra.config.js 中的配置也非常豐富而且都支持修改,例如:

export default {  outFile"dist/app.exe",  esbuild: {    // esbuild 可選配置  },  modifyMetadatatrue,  // modify metadata of the executable (useful if you have macOS and don't have wine installed)  exe: {    companyName"Your Company",    // 公司名稱    productName"Your App",    // 產(chǎn)品名稱    fileDescription"Your App Description",    // app 描述    productVersion"1.0.0",    // app 版本    fileVersion"1.0.0.0",    // 文件版本    icon"path/to/icon.ico",    //  app 圖標(biāo) icon    copyright"Copyright ? 2023 Your Company",    // 版權(quán)  },};

參考資料

https://github.com/astracompiler/cli

https://astra-js.netlify.app/cli/configuration/


閱讀原文:原文鏈接


該文章在 2025/6/23 12:54:24 編輯過
關(guān)鍵字查詢
相關(guān)文章
正在查詢...
點(diǎn)晴ERP是一款針對(duì)中小制造業(yè)的專業(yè)生產(chǎn)管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國(guó)內(nèi)大量中小企業(yè)的青睞。
點(diǎn)晴PMS碼頭管理系統(tǒng)主要針對(duì)港口碼頭集裝箱與散貨日常運(yùn)作、調(diào)度、堆場(chǎng)、車隊(duì)、財(cái)務(wù)費(fèi)用、相關(guān)報(bào)表等業(yè)務(wù)管理,結(jié)合碼頭的業(yè)務(wù)特點(diǎn),圍繞調(diào)度、堆場(chǎng)作業(yè)而開發(fā)的。集技術(shù)的先進(jìn)性、管理的有效性于一體,是物流碼頭及其他港口類企業(yè)的高效ERP管理信息系統(tǒng)。
點(diǎn)晴WMS倉儲(chǔ)管理系統(tǒng)提供了貨物產(chǎn)品管理,銷售管理,采購(gòu)管理,倉儲(chǔ)管理,倉庫管理,保質(zhì)期管理,貨位管理,庫位管理,生產(chǎn)管理,WMS管理系統(tǒng),標(biāo)簽打印,條形碼,二維碼管理,批號(hào)管理軟件。
點(diǎn)晴免費(fèi)OA是一款軟件和通用服務(wù)都免費(fèi),不限功能、不限時(shí)間、不限用戶的免費(fèi)OA協(xié)同辦公管理系統(tǒng)。
Copyright 2010-2025 ClickSun All Rights Reserved

黄频国产免费高清视频,久久不卡精品中文字幕一区,激情五月天AV电影在线观看,欧美国产韩国日本一区二区
亚洲欧美日韩中文在线 | 亚洲国产精品综合久久网各 | 亚洲日韩欧美香蕉一区 | 亚洲欧美日韩偷拍综合一区 | 亚洲一级一区二区三 | 中文字幕精品aⅴ专区 |