命令行構建Unity項目

自動任務構建

一般能夠在桌面雙擊 Unity 圖標,啓動程序,可是,也能夠經過命令行(例如,MacOS 終端或 Windows Command 窗口)運行程序。若使用這種方式啓動 Unity,它將能夠接受啓動命令和信息,這將很是有助於測試套件、自動構建和其餘製做任務。html

在 MacOS 中,能夠在終端 (Terminal) 輸入如下內容,啓動 Unity:-服務器

/Applications/Unity/Unity.app/Contents/MacOS/Unityapp

…而在 Windows 中,應在 cmd 窗口輸入:編輯器

"C:\Program Files (x86)\Unity\Editor\Unity.exe"svn

獨立版 Unity 遊戲能夠用相同的方式啓動。函數

Unity命令行參數

如上所述,在啓動編輯器和構建遊戲時,也能夠選擇性地使用其餘命令和信息。使用如下命令行參數並可達到這一目的:-單元測試

-batchmode
在批處理模式下運行 Unity。此命令行應始終與其餘命令行參數配合使用,由於它能夠確保不會彈出窗口,無需任何人爲干預。在執行腳本代碼時發生異常、資源服務器更新失敗或其餘操做失敗時,Unity 將當即退出,並返回代碼 1。請注意:在批處理模式下,Unity 將向控制檯發送最小版本的日誌輸出。固然, 資源包。不顯示導入對話框。
-createProject <pathname>
在指定路徑建立空工程。
-projectPath <pathname>
在指定路徑打開工程。
-logFile <pathname>
指定寫入編輯器或 Windows 獨立版日誌文件的位置。
-assetServerUpdate <IP[:port] projectName username password [r <revision>]>
IP:port 部分給出的 資源服務器 (Asset Server) 中強制執行工程更新。端口爲可選,若未指定,則假設爲標準端口 (10733)。建議將此命令與 -projectPath 參數配合使用,以確保更新正確的工程。若是未給出工程名稱,那麼將使用 Unity 上次打開的工程。若是 -projectPath 指定的路徑不存在工程,那麼將自動建立此工程。
-exportPackage <exportAssetPath1 exportAssetPath2 ExportAssetPath3 exportFileName>
根據給定路徑(或給定路徑集合)導出資源包。exportAssetPath 是從 Unity 工程中導出的文件夾(相對 Unity 工程的根目錄),exportFileName 是指資源包的名稱。目前,此選項僅能導出整個文件夾。此參數一般須要與 -projectPath 參數同時使用。
-nographics (僅限 Windows)
當以批處理模式運行時,徹底不須要初始化圖形設備。這可讓您在機器上自動運行工做流,即便沒有 GPU 一樣如此(只有在焦點對準窗口時才能運行自動工做流,不然將不能發送模擬輸入命令)。使用此選項生成的獨立版播放器不具備任何圖形。
-executeMethod <ClassName.MethodName>
在啓動 Unity 以後、打開工程以後以及執行可選資源服務器更新以後,當即執行 靜態類函數。此參數可用來不斷整合、執行單元測試、完成構建、準備數據等等。若是但願從命令行 (commandline) 返回錯誤,那麼能夠拋出一個異常,引發 Unity 以 1 值退出,或調用具備非零代碼的 EditorApplication.Exit。若想要傳遞參數,能夠將其添加至命令行,並使用 System.Environment.GetCommandLineArgs 在類函數內檢索。
 

自動構建DEMO

cd ..\..\..\
set WORKSPACE=%CD%

svn up --accept mine-full --force
cd tools\
"C:\Program Files (x86)\Unity\Editor\Unity.exe" -batchmode -projectPath %WORKSPACE%\cb-art -nographics -executeMethod CAutoResourceBuilder.ProductExportAll_Android  -logFile %WORKSPACE%\cb-product\BuildInfo\LastAutoBuildLog.txt -quit

參考資料

Unity3D命令行Build http://www.cnblogs.com/gameprogram/archive/2012/05/11/2496303.html測試

Unity Command Line Argument http://docs.unity3d.com/Manual/CommandLineArguments.htmlui

遊戲蠻牛Unity用戶文檔 命令行參數 http://www.unitymanual.com/m/Manual/65.htmlspa

相關文章
相關標籤/搜索