using System;
using UnityEditor;
using UnityEngine;
using CSObjectWrapEditor;
using XLua;
public static class BuildFromCLI
{
///
/// 此方法通过Unity菜单调用。
///
[MenuItem("XLua/Examples/13_BuildFromCLI")]
public static void BuildFromUnityMenu()
{
var outputDir = Application.dataPath.Substring(0, Application.dataPath.Length - "/Assets".Length) + "/output";
var packageName = "xLuaGame.exe";
build(outputDir, packageName);
}
///
/// 此方法通过命令行调用。
///
public static void Build()
{
var outputDir = Application.dataPath.Substring(0, Application.dataPath.Length - "/Assets".Length) + "/output";
var packageName = "xLuaGame.exe";
build(outputDir, packageName);
}
private static void build(string outputDir,string packageName)
{
Debug.Log("构建开始:输出目录 " + outputDir);
DelegateBridge.Gen_Flag = true;
Generator.ClearAll();
Generator.GenAll();
var levels = new string[0];
var locationPathName = string.Format("{0}/{1}", outputDir, packageName);
var target = BuildTarget.StandaloneWindows64;
var options = BuildOptions.None;
BuildPipeline.BuildPlayer(levels,locationPathName,target,options);
Debug.Log("构建完成");
}
}