Table of contents

Build Project in Command Line

Usually when creating a new license project for your product, you will run the SoftwareShield IDE to set up all kinds of license parameters and test if the license project is integrated with your app correctly. However, once you are confident the licensing project works fine, you might want to integrate the SoftwareShield license project building process with your daily workflow, that is why SoftwareShield provides command line work mode on both Windows and Mac platform.


This command line utility is deployed in the SoftwareShield IDE install directory.


Shield.CMD Options


-h, -?, --help
Show this message and exit.
-v, --version
Show version information.
-b, --build
Build project
-s, --build-sync
Synchronize build-id with server when build
-i, --build-increase
Increase build-id when build
-n, --build-not-touch
Keep build-id unchanged when build
-u, --upload
Upload the project to CheckPoint server
-f, --file=VALUE
Specify project file
-c, --compile
compile license file and keygen file
-o, --outputDir=VALUE
Specify output directory for compiled license and keygen file
-p, --pause
Pause and wait for ENTER when wrapping is complete.


  • Log In

    You must have a valid CheckPoint login account to build and upload;

    The command line utility read CheckPoint login account settings from SoftwareShield IDE's global option, make sure you have input your CheckPoint web portal credential in IDE. (ref: Global Server Settings)

  • Build-ID Update Policy

    Build-Id is the key identifying the current application build version, Build-ID synchronizing (-s or --buildid-sync) is the default behavior if other build-id update policy (-n, -i) is not specified.

    The Build-ID update policy is used only when project building (-b) is specified. It is not used when compile (-c) only.


  1. IDE's synchronized build behavior (build-id sync + uploading):

     Shield.CMD -buf XXX.lpj

    Before project building, its build-id is retrieved from server, after building the license project is uploaded to server. It is exactly what the IDE will do when running in the interactive mode.

  1. Rebuilds a project to reproduce the app binary without uploading:

     Shield.CMD -bnf XXX.lpj

    When project building, the build-id is not touched and the license project is not uploaded to server. This can be useful when you are debugging and updating your own app binary and rebuild the app locally.

  1. Upload project without building:

    Shield.CMD -uf XXX.lpj
  2. Compile project to generate license and keygen file:

    Shield.CMD -cf XXX.lpj -o c:\temp

    The output license file will be c:\tmp\XXX.lic, Keygen file will be: c:\tmp\

    It is useful when you are doing SDK integration and you only want to generate the license file without full project building.

IDE Generated Build Scripts

When SoftwareShield builds project, it generates two build scripts in the project folder:

  • build.bat

    Rebuilds a project to reproduce the app binary without uploading, it is useful when your license project settings are not modified and you just want to wrap your own updated app binaries. When integrating with SoftwareShield SDK, or you are debugging app, the build script will generate wrapped app without creating unnecessary new build-ids and project loading.

  • build-sync.bat

    IDE's synchronized build behavior (build-id sync + uploading), it is the same behavior as you press the build button in SoftwareShield IDE, the build-id is synchronized with server side and the license project is uploaded to the server for successful build.