flowguard

Getting started

Quick start

Protect your first jar in a few minutes.

  1. 1

    Open the web UI

    Run the jar with no arguments. It opens your browser to the settings page.

    bash
    java -jar flowguard.jar
  2. 2

    Pick your input file

    Point Input at the jar you want to protect. Leave Output on its default — it writes the result next to your input file with -pbco added to the name, and backs up anything it would overwrite.

  3. 3

    Turn on a sensible starting set

    For a first run, turn on: renaming, string protection (Standard), removing debug info, and the general clean-up pass. Leave native protection and class sealing off for now — they take more setup and are covered in their own pages.

  4. 4

    Run it

    Click run (or save your settings and use the CLI — see below). Flowguard works through your classes and writes the protected jar.

  5. 5

    Test the result

    Run the protected jar the same way you'd run the original, and make sure it behaves the same. If anything breaks, turn protections back on one at a time to find which one caused it — see Settings reference for what each one changes.

Running from the command line

Once you've saved settings from the web UI, you can repeat the same run from a script:

bash
java -cp flowguard.jar dev.pbco.Start --input path/to/app.jar

The CLI doesn't take flags for individual protections — it always uses your last saved settings. That's what makes it script-friendly: configure once in the UI, then run the same configuration repeatedly or in CI. See Command line for the full flag list.