一、引擎配置

运行引擎源码根目录的setup.py。它将会设置下面这些环境变量(这里只描述windows平台情况)。

  1. COCOS_CONSOLE_ROOT : used to run cocos console tools.
  2. NDK_ROOT : used to build android native codes.
  3. ANDROID_SDK_ROOT : used to generate applicatoin on Android through commands.
  4. COCOS_X_ROOT : path where cocos2d-x is installed.
  5. COCOS_TEMPLATES_ROOT : path where cocos2d-x's templates are installed.

注意运行本脚本需要系统安装 2.x(不是 3.x)版本的 Python。

  1. ./setup.py
  2. 或者
  3. python setup.py

二、可用命令

  1. 可用的命令:
  2. cocos new 创建一个新的工程。
  3. cocos compile 编译并打包工程。
  4. cocos run 在设备或者模拟器上编译,部署和运行工程。
  5. cocos deploy 编译并在设备或模拟器上部署工程。
  6. cocos luacompile lua 文件进行加密和编译为字节码的处理。
  7. cocos jscompile js 文件进行加密和压缩处理。
  8. cocos gen-simulator 生成 Cocos 模拟器。
  9. 可用的参数:
  10. cocos -h, --help 显示帮助信息。
  11. cocos -v, --version 显示命令行工具的版本号。
  12. cocos --ol ['en', 'zh', 'zh_tr'] 指定输出信息的语言。
  13. cocos --agreement ['y', 'n'] 使用指定的值来同意或拒绝协议。
  14. 示例:
  15. cocos new --help
  16. cocos run --help

1、cocos new

创建一个新的工程。

  1. cocos new
  2. 必需参数:
  3. PROJECT_NAME 设置工程名称。
  4. 可选参数:
  5. -h, --help show this help message and exit
  6. -p PACKAGE_NAME 设置工程的包名。
  7. -d DIRECTORY 设置工程存放路径。
  8. -t TEMPLATE_NAME 设置使用的模板名称。
  9. --ios-bundleid IOS_BUNDLEID 设置工程的 iOS Bundle ID
  10. --mac-bundleid MAC_BUNDLEID 设置工程的 Mac Bundle ID
  11. -e ENGINE_PATH 设置引擎路径。
  12. --portrait 设置工程为竖屏。
  13. -l {cpp,lua,js} 设置工程使用的编程语言,可选值:[cpp | lua | js]
  14. 例子:
  15. cocos new MyGame -p com.MyCompany.MyGame -l cpp -d ~/MyCompany
  16. cocos new MyGame -p com.MyCompany.MyGame -l lua -d ~/MyCompany
  17. cocos new MyGame -p com.MyCompany.MyGame -l js -d ~/MyCompany
  18. 将在~/MyCompany目录下,创建MyGame文件夹。

2、cocos compile

编译并打包工程。

  1. cocos compile
  2. 可选参数:
  3. -h, --help show this help message and exit
  4. -s SRC_DIR 指定工程路径。
  5. -o OUTPUT_DIR 指定输出文件的路径。
  6. 如果当前路径就是工程路径,可不用-s、-o,取而代之
  7. cocos compile . -p ios -m release
  8. -q, --quiet 较少的输出。
  9. -p PLATFORM 指定编译的平台。
  10. --list-platforms List available platforms
  11. --proj-dir PROJ_DIR 指定目标平台路径。
  12. -m MODE 设置编译模式,可选值为 debug|release,默认值为 debug
  13. -j JOBS 指定使用几个 cpu 进行编译。
  14. Android 相关参数:
  15. --ap ANDROID_PLATFORM 指定编译 Android 工程所需使用的目标平台。
  16. --build-type BUILD_TYPE 设置 native code 的编译类型,可选值为 cmake|ndk-build|none
  17. 默认值为 cmake。如果指定为 nonenativecode 不会被编译。
  18. --app-abi APP_ABI 设置 ndk-build APP_ABI 属性。可以使用 ':'分隔多个值。
  19. 示例:--app-abi armeabi-v7a:x86。默认值为'armeabi-v7a'
  20. --ndk-toolchain TOOLCHAIN 指定 ndk-build NDK_TOOLCHAIN 属性。
  21. --ndk-cppflags CPPFLAGS 指定 ndk-build APP_CPPFLAGS 属性。
  22. --no-apk 不生成 apk 文件。
  23. --no-sign 不生成带有签名的 apk 文件。
  24. Windows 相关参数:
  25. --vs VS_VERSION 指定编译所使用的 Visual Studio版本。如:2015。默认自动查找可用版本。
  26. Web 相关参数:
  27. --source-map 启用 source-map
  28. --advanced 使用 closure 编译器的高级模式编译 js
  29. 文件,会获得更高的压缩率,但是有出现 bug 的风险。
  30. iOS/Mac 相关参数:
  31. -t TARGET_NAME 指定需要编译的 target
  32. iOS 相关参数:
  33. --sign-identity SIGN_ID 指定 iOS 的代码签名 ID
  34. -sdk [USE_SDK] 指定 iOS SDK,如 iphoneos。默认是 iphonesimulator
  35. lua/js 相关参数:
  36. --no-res 指定生成的包中不包含工程资源文件。
  37. --compile-script {0,1} 开启/关闭编译 lua/js 脚本文件的功能。
  38. lua 相关参数:
  39. --lua-encrypt 开启 XXTEA 加密功能。
  40. --lua-encrypt-key LUA_ENCRYPT_KEY 指定 XXTEA 加密功能的 key 字段。
  41. --lua-encrypt-sign LUA_ENCRYPT_SIGN 指定 XXTEA 加密功能的 sign 字段。
  42. 例子:
  43. cocos compile -s ~/MyCompany/MyGame -p ios -m release -o ~/MyCompany/MyGame/bin
  44. cocos compile -s ~/MyCompany/MyGame -p android -m release -o ~/MyCompany/MyGame/bin
  45. cocos compile -s c:\MyCompany\MyGame -p win32 -m release -o c:\MyCompany\MyGame\bin

3、cocos run

在设备或者模拟器上编译,部署和运行工程。

  1. cocos run
  2. 可选参数:
  3. -h, --help show this help message and exit
  4. -s SRC_DIR 指定工程路径。
  5. -o OUTPUT_DIR 指定输出文件的路径。如果当前路径就是工程路径,可不用-s、-o,取而代之以:
  6. cocos run . -p ios -m release
  7. -q, --quiet 较少的输出。
  8. -p PLATFORM 指定目标平台。
  9. --list-platforms List available platforms
  10. --proj-dir PROJ_DIR 指定目标平台路径。
  11. -m MODE 设置运行模式,可选值为 debug/release,默认值为 debug
  12. web 工程可用参数:
  13. -b BROWSER 设置指定浏览器打开 url。如果未指定使用系统默认浏览器。
  14. --param PARAM 在设置指定浏览器打开后,添加上特殊参数。
  15. --port [SERVER_PORT] 设置本地服务器的端口,默认值为 8000
  16. --host [SERVER_HOST] 设置本地服务器的主机地址,默认值为 127.0.0.1
  17. --no-console 关闭 WindowsMac Linux下的模拟器控制台窗口
  18. (传入命令行参数 '-console no'给模拟器)。
  19. --working-dir WORKING_DIR 指定 WindowsMac Linux下模拟器运行的工作目录
  20. (传入命令行参数 '-workdir"<path>"' 给模拟器)。
  21. ios 工程可用参数:
  22. -sdk [USE_SDK] 设置 iOS 使用的 SDK,如 iphoneos。默认是iphonesimulator
  23. 例子:
  24. cocos run -s ~/MyCompany/MyGame -p ios
  25. cocos run -s ~/MyCompany/MyGame -p ios -m release
  26. cocos run -s ~/MyCompany/MyGame -p android
  27. cocos run -s c:\MyCompany\MyGame -p win32
  28. web工程例子:
  29. cocos run -s ~/MyCompany/MyGame -p web -b /Applications/Google\Chrome.app
  30. cocos run -s ~/MyCompany/MyGame -p web -b C:\Program Files\Google\Chrome\Application\chrome.exe
  31. cocos run -s ~/MyCompany/MyGame -p web -b /usr/local/bin/chrome

4、cocos deploy

编译并在设备或模拟器上部署工程。

  1. cocos deploy
  2. 可选参数:
  3. -h, --help show this help message and exit
  4. -s SRC_DIR 指定工程路径。
  5. -q 较少的输出。
  6. -p PLATFORM 指定目标平台。
  7. --list-platforms List available platforms
  8. --proj-dir PROJ_DIR 指定目标平台路径。
  9. -m MODE 设置部署模式,可选值为 debug/release,默认值为 debug
  10. --no-uninstall 安装应用之前不卸载之前安装的应用。
  11. 例子:
  12. cocos deploy -s ~/MyCompany/MyGame -p ios -m release
  13. cocos deploy -s ~/MyCompany/MyGame -p android -m release
  14. cocos deploy -s c:\MyCompany\MyGame -p win32 -m release

5、cocos luacompile

对 lua 文件进行加密和编译为字节码的处理。

  1. cocos luacompile
  2. 可选参数:
  3. -h show this help message and exit
  4. -v, --verbose 更多输出信息。
  5. -s SRC_DIR_ARR 指定需要编译的 lua 文件路径,支持指定多个路径。
  6. -d DST_DIR 指定输出文件的路径。
  7. -e 开启 XXTEA 加密功能。
  8. -k ENCRYPTKEY 指定 XXTEA 加密功能的 key 字段。
  9. -b ENCRYPTSIGN 指定 XXTEA 加密功能的 sign 字段。
  10. --disable-compile 关闭编译为字节码的功能。
  11. --bytecode-64bit 生成64Luajit格式的字节码

6、cocos jscompile

对 js 文件进行加密和压缩处理。

  1. cocos jscompile
  2. 可选参数:
  3. -h, --help show this help message and exit
  4. -v, --verbose 更多输出信息。
  5. -s SRC_DIR_ARR 指定需要编译的 js 文件路径,支持指定多个路径。
  6. -d DST_DIR 指定输出文件的路径。
  7. -c 使用 closure 编译器将所有 js 文件压缩为一个大的文件。
  8. -o COMPRESSED_FILENAME 指定压缩为一个大的 js 文件名称。只有当使用了 '-c'参数时起效。
  9. -j COMPILER_CONFIG 指定 json 格式的 closure 编译器配置,请参考compiler_config_sample.json
  10. -m CLOSURE_PARAMS 传给 closure 编译器的扩展参数。会覆盖 closure 编译器的已有配置。

7、cocos gen-simulator

生成 Cocos 模拟器。

  1. cocos gen-simulator
  2. 可选参数:
  3. -h show this help message and exit
  4. -c 生成之前清除输出目录。会完全删除输出目录。
  5. -e ENGINE_PATH 指定引擎文件夹。默认值为当前工具所在的引擎根目录。
  6. -m {debug,release} 指定使用 debug 或者 release 模式来生成模拟器。默认值为debug
  7. -o OUT_DIR 指定模拟器的输出目录。默认值为引擎根目录下的'simulator' 文件夹。
  8. -p {ios,mac,android,win32} 指定需要编译的目标平台。可以通过多个 '-p'参数指定编译多个目标平台。
  9. 默认编译所有可用的目标平台。
  10. --vs VS_VERSION 指定使用的 Visual Studio 版本,例如2015。默认自动查找可用的版本。