Publish in command line
Publish project in command line can help us build auto publish step, we can modify command line parameters to reach different goals.
Command Reference
For example: Build Android platform with debug mode enabled
- Mac
/Applications/CocosCreator.app/Contents/MacOS/CocosCreator --path projectPath
--build "platform=android;debug=true"
- Windows
CocosCreator/CocosCreator.exe --path projectPath --build "platform=android;debug=true"
If you want to auto start compile after build, use autoCompile
parameter:
--build "autoCompile=true"
You can also to compile the native project of the native platform separately by using --compile
command, the parameters is the same with --build
.
--compile "platform=android;debug=true"
Note: The Web platform does not need to use --compile
command, and the --compile
command is used by the native platform.
Publish Parameters
--path
: Project Path--build
: Publish project Parameters--compile
: Compile native project Parameters
If no parameters are specified after --build
or --compile
, then the parameters used in the Build panel, such as platforms, templates, and so on, will be used as default parameters. If additional parameter settings are specified, the default parameters will be overwritten with the specified parameters. The available parameters are:
excludedModules
: The modules need remove from engine. Engine modules can find from heretitle
- Project titleplatform
- Publish platform [web-mobile, web-desktop, android, win32, ios, mac, runtime]buildPath
- Publish pathstartScene
- Start scene uuiddebug
- Whether or not debug modepreviewWidth
- Web desktop window widthpreviewHeight
- Web desktop window heightsourceMaps
- Whether or not need add source mapswebOrientation
- Orientation option on web mobile [landscape, portrait, auto]renderMode
- Render mode- 0 - Automatically chosen by engine.
- 1 - Forced to use canvas renderer.
- 2 - Forced to use WebGL renderer, but this will be ignored on mobile browsers.
inlineSpriteFrames
- Whether or not inline all SpriteFramesmergeStartScene
- Whether or not merge all JSON that the Start Scene depends onoptimizeHotUpdate
- Whether or not merge all the SpriteFrames in the same atlaspackageName
- Package NamevsVersion
- Visual studio version, only used on windows. [auto, 2013, 2015, 2017]useDebugKeystore
- Whether or not use debug keystorekeystorePath
- Keystore pathkeystorePassword
- Keystore passwordkeystoreAlias
- Keystore aliaskeystoreAliasPassword
- Keystore alias passwordorientation
- Orientation on native mobile [portrait, upsideDown, landscapeLeft, landscapeRight]
examples:- orientation={'landscapeLeft': true}
- orientation={'landscapeLeft': true, 'portrait': true}
template
- Template on native platform [default, link, binary]apiLevel
- Android api levelappABIs
- Which cpu types android need to support. You can choose more than one type from [armeabi, armeabi-v7a, arm64-v8a, x86] Because it's an array type, the option can define like this.- appABIs=['armeabi', 'armeabi-v7a']
androidStudio
- Whether or not use android studio to compile android projectincludeAnySDK
- Whether or not add AnySDK on web platformoauthLoginServer
- AnySDK oauth login serverappKey
- AnySDK App KeyappSecret
- AnySDK App SecretprivateKey
- AnySDK Private KeyincludeEruda
- Whether or not inject Eruda debug plugin on web platformmd5Cache
- Whether or not enable md5 cacheencryptJs
- Whether or not encrypt js files when publish native platformxxteaKey
- The key used for encrypt js fileszipCompressJs
- Whether or not compress the files after encrypting js fileswechatgame
- The wechatgame optionsappid
- The wechat game appidorientation
- The screen orientation [landscape, portrait]
autoCompile
- Whether or not auto compile project after publish project. Default is false.configPath
- Config file path. If defineconfigPath
, then creator will load this file as ajson
file, and combine with the build parameters.
Publish on Jenkins
CocosCreator also need GUI environment when running in command line. If your Jenkins can not run CocosCreator in command line, a solution is running Jenkins on the agent mode, so it can visit the WindowServer.
Details: https://stackoverflow.com/questions/13966595/build-unity-project-with-jenkins-failed