0 前言
最近好多朋友咨詢關於 App designer或者GUI設計程序想要封裝成獨立運行的“exe”文件,但是總會遇到怎么封裝、封裝后不能脫機運行等問題。這篇文章將非常詳細地闡述怎么封裝、封裝后怎么脫機運行等問題。如果還無法解決,再付費咨詢。
一、概述
首先,需要知道MATLAB程序在封裝后,它是怎么脫機運行的。有兩種方式,一種是未安裝MATLAB的計算機上運行,另一種是在基於Web瀏覽器運行,但是只有使用app designer設計的應用程序才可以部署在Internet環境中運行。
然后,不是封裝成“exe”后雙擊就可以正常運行的。每種方式都需要額外的程序支持運行,需要安裝和配置相應的程序,其中:
(1)在未安裝MATLAB的計算機上運行打包應用程序時,用戶必須安裝MATLAB Runtim或者指定MATLAB runtime網絡安裝的位置;因此,需要下載和當前封裝程序的MATLAB版本匹配的runtime,下載地址和安裝如下鏈接:runtime下載安裝鏈接
(2)在Web瀏覽器中運行MATLAB應用程序,運行需要完成Web app Server的安裝和配置。
最后,分別就這兩種情況進行教程講解,並以實例進行講解說明。
二、基於runtime運行(獨立於桌面運行)
1.從MATLAB創建獨立運行程序
(1)在MATLAB Apps選項卡上,點擊Apps部分最右側 的箭頭。在應用程序部署中,單擊應用程序編譯器
(2)在MATLAB Compiler項目窗口中,指定要部署的 MATLAB 應用程序的主文件:在工具條的主文件部分,單擊;在“添加文件”窗口中,瀏覽並選擇
主文件
。
(3)選擇打包選項,“runtime downloaded from web”和“runtime included in package”,將下載了的“Runtime”包含到打包選項中。
(4)自定義打包的應用程序信息及外觀
2.運行程序
雙擊"MyAppInstall.exe",如果運行的計算機上還沒有安裝MATLAB RUNTIME,選擇MATLAB Runtime庫中的安裝文件夾,然后點擊Next,安裝該文件。
三、基於Web瀏覽器運行
1.創建基於Web的“exe”文件
在使用App designer創建了一個應用程序后,打包程序如下:
(1)在命令行中鍵入“Web App Compiler”,打開Web app Complier
(2)在工具條的MAIN FILE部分,單擊按鈕將您的 App Designer
.mlapp
文件添加 到項目中。
(3)在 App Designer 中通過點擊Edit App Details來編輯有關應用程序的信息
(4)選中“將 Web 應用程序復制到服務器應用程序文件夾”復選框,並指定服務器上要.ctf
自動復制Web 應用程序存檔(文件)的應用程序文件夾的路徑。如果沒有選中此復選框,Web 應用程序編譯器將.ctf
在項目文件夾中創建 Web 應用程序存檔(文件),必須手動將 Web 應用程序(.ctf
文件)復制或上傳到服務器上的應用程序文件夾。
(5)在應用程序運行所需的文件部分添加支持文件(如果有)。支持文件包括任何 MAT 文件、Web 應用程序使用的圖像或MATLAB Compiler™找不到的用戶編寫的 MATLAB 函數。
(6)單擊在打開的“保存項目”對話框中,指定項目名稱和要保存 Web 應用項目的位置。
(7)打包完成后,在“package”對話框中,單擊打開輸出文件夾,將會打開飽含以下文件的項目文件夾:
-
webAppArchiveName
.ctf -
mccExcludedFiles.log
-
PackagingLog.html
-
requiredMCRProducts.txt
(8)運行Web應用程序時,需要部署程序
2.部署Web應用程序
(1)准備工作
先安裝MATLAB Web App Server產品(安裝和卸載 MATLAB Web App Server教程)
身份驗證,用於訪問部署在服務器上的應用程序;驗證教程
驗證Role-based Access時被指定為作者:配置教程
(2)設置兩種方式
-
將Web app編譯器生成的“.ctf”文件復制到服務器配置的 apps 文件夾。
-
將Web app編譯器生成的“.ctf”文件上傳到服務器配置的 apps 文件夾。但這種方式需要安裝MATLAB Web App Server
(3)具體的步驟
-
導航到服務器配置的 Web 應用程序主頁。可以通過在系統命令行中執行(MATLAB Web App Server)或通過從管理服務器來獲取主頁的 URL。主頁 URL 的格式為:
webapps-status
http://
webAppServer
:PortNumber
/webapps/home/index.html這里,
webAppServer
是 Web 應用服務器主機名,PortNumber
是配置服務器時指定的端口。 -
點擊
在 Web 應用程序主頁上打開管理應用程序頁面。
-
點擊
並導航到 Web App Compiler(在MATLAB Compiler 中)在打包過程中生成的項目文件夾。
-
選擇文件
並單擊webAppArchiveName
.ctf
3.運行Web程序
(1)單擊主頁上的 Web 應用程序即可運行
(2)要查看所有 Web 應用程序及其狀態和診斷消息的列表,可以單擊主頁右上角的診斷鏈接
(3)要返回 Web 應用程序的主頁,可以單擊頁面頂部面包屑路徑上的MATLAB Web Apps。
四、實例
1. 打開一個設計好的app程序,這里使用自帶的示例“使用儀表控件”的那個。
2. 封裝
在封裝時在菜單欄選擇“共享”,共有三個內容,后兩個是用於獨立於MATLAB運行的,這里先介紹“獨立桌面的app”
然后直接進入封裝
封裝后有這樣幾個文件,上面兩個文件是用於重新封裝,第三個文件用於檢測”exe“文件是否正常工作,最后一個"html”文件是封裝記錄