zoukankan      html  css  js  c++  java
  • 如何用bat批处理编译swf项目

    平时用FB等IDE编译多模块的游戏项目时,除了添加移除模块的操作很繁琐外,编译速度也非常之慢。而用bat来编译swf项目,速度非常快,稳定。

    在此分享自己工作用的bat,每次运行会重新编译主模块GameLoader.swf,main.swf,并编译相应的子模块。

     1 @echo off
     2 for /f "tokens=1-4 delims=:. " %%h in ("%time%") do set start_=%%h%%i%%j%%k
     3 ::记录编译开始时间
     4 set CODE="D:xxxxx"
     5 ::设置代码路径
     6 set PUB="D:xxxxxin-debug"
     7 set TARGET=%PUB%
     8 ::设置输出路径
     9 
    10 set FLEX_SDK="D:Program Files (x86)AdobeAdobe Flash Builder 4.6sdks3.6.0"
    11 ::设置sdk位置
    12 set DEBUG=false
    13 ::设置是否编译成debug版本
    14 
    15 set MODULE_LIST=(ModuleA,ModuleB,ModuleC)
    16 ::要编译的子模块列表
    17 
    18 set APP=%CODE%srcmain.as
    19 ::项目主模块
    20 set Loader=%CODE%srcGameLoader.as
    21 ::项目加载类
    22 
    23 echo 正在编译GameLoader.swf...
    24 %FLEX_SDK%inmxmlc -target-player=11.2 --debug=%DEBUG% -define=CONFIG::debug,%DEBUG% -
    25 
    26 incremental=true -show-actionscript-warnings=true -static-link-runtime-shared-libraries=true 
    27 
    28 -strict=true -library-path+=%CODE%lib -link-report=%TARGET%loadReport.xml -output=%TARGET%
    29 
    30 GameLoader.swf %Loader%
    31 
    32 echo 正在编译main.swf...
    33 %FLEX_SDK%inmxmlc -target-player=11.2 --debug=%DEBUG% -define=CONFIG::debug,%DEBUG% -
    34 
    35 incremental=true -show-actionscript-warnings=true -static-link-runtime-shared-libraries=true 
    36 
    37 -strict=true -library-path+=%CODE%lib -load-externs=%TARGET%loadReport.xml -link-report=
    38 
    39 %TARGET%mainReport.xml -output=%TARGET%main.swf %APP%
    40 
    41 
    42 set MODULE_TARGET=%PUB%modules
    43 set MODULE_CODE=%CODE%srcmodules
    44 set MODULE_CMD=-source-path=%CODE%src -source-path=%CODE%srcmodules -allow-source-path-
    45 
    46 overlap=true -target-player=11.2 --debug=%DEBUG% -define=CONFIG::debug,%DEBUG% -
    47 
    48 incremental=true -show-actionscript-warnings=true -static-link-runtime-shared-libraries=true 
    49 
    50 -strict=true -library-path+=%CODE%lib  -load-externs=%TARGET%mainReport.xml
    51 
    52 for %%i in %MODULE_LIST% do (
    53    echo 正在编译%%i...
    54    %FLEX_SDK%inmxmlc %MODULE_CMD% -output=%MODULE_TARGET%\%%i.swf %MODULE_CODE%\%%i.as
    55 )
    56 
    57 for /f "tokens=1-4 delims=:. " %%h in ("%time%") do set now_=%%h%%i%%j%%k
    58 ::记录编译结束时间
    59 set /a diff_=(%now_%-%start_%)/100
    60 echo 编译用时 %diff_% ??
    61 pause

    修改CODE,PUB,FLEX,APP,Loader,MODULE_TARGET,MODULE_CODE等参数就可以用来编译自己的项目,通过MODULE_LIST,DEBUG来选择要编译的子模块,已经是否生成为DEBUG版本。

    如果你对BAT还不是很熟悉,可以参考下面教程:
    BAT批处理教程
    bat之for循环
    Flex mxmlc编译命令选项

  • 相关阅读:
    利用qq设置个性化的域名邮箱
    中小企业为什么要上HR系统
    JAVA设计模式之:命令模式
    hdoj 1251 统计难题 【字典树】
    哈希表(散列)HashTable实现
    HDU 1711 Number Sequence(字符串匹配)
    回溯法之求n个集合的幂集
    微软Azure云计算服务主导全球
    jQuery选择器
    MyEclipse激活步骤
  • 原文地址:https://www.cnblogs.com/leoin2012/p/3900041.html
Copyright © 2011-2022 走看看