com.github.stormbit.packer.PackerCommandLine Maven / Gradle / Ivy
The newest version!
package com.github.stormbit.packer;
import com.lexicalscope.jewel.cli.Option;
import com.lexicalscope.jewel.cli.Unparsed;
import java.io.File;
import java.util.List;
public interface PackerCommandLine
{
@Option(helpRequest = true, description = "display help", shortName = { "h" }, longName = { "help" })
boolean help();
@Option(description = "print additional information to console", shortName = { "v" }, longName = { "verbose" })
boolean verbose();
@Option(description = "target jdk version", longName = "jdk.version", defaultToNull = true)
String jdk_version();
@Unparsed
File config();
boolean isConfig();
@Option(description = "target operating system", longName = { "platform" }, defaultToNull = true)
String platform();
@Option(description = "file path or URL to a JDK to be bundled", longName = { "jdk" }, defaultToNull = true)
String jdk();
@Option(description = "name of native executable, without extension", longName = { "executable" }, defaultToNull = true)
String executable();
@Option(description = "JAR file(s) containing code and assets to be packed", longName = { "classpath" }, defaultToNull = true)
List classpath();
@Option(description = "JAR file(s) to remove platform libs", longName = { "removelibs" }, defaultToNull = true)
List removePlatformLibs();
@Option(description = "fully qualified main class name, e.g. com.badlogic.MyApp", longName = { "mainclass" }, defaultToNull = true)
String mainClass();
@Option(description = "arguments passed to the JVM, e.g. Xmx1G, without dashes", longName = { "vmargs" }, defaultToNull = true)
List vmArgs();
@Option(description = "minimize JRE by removing folders and files specified in config file", longName = { "minimizejre" }, defaultToNull = true)
String minimizeJre();
@Option(description = "folder to cache bundled JRE, to speedup builds", longName = { "cachejre" }, defaultToNull = true)
File cacheJre();
@Option(description = "additional files and folders to be packed next to the executable", longName = { "resources" }, defaultToNull = true)
List resources();
@Option(description = "output directory", longName = { "output" }, defaultToNull = true)
File outDir();
@Option(description = "platform libs output directory", longName = { "libs" }, defaultToNull = true)
File platformLibsOutDir();
@Option(description = "file containing icon resources (needs to fit platform, OS X only)", longName = { "icon" }, defaultToNull = true)
File iconResource();
@Option(description = "bundle identifier, e.g. com.badlogic (used for Info.plist on OS X)", longName = { "bundle" }, defaultToNull = true)
String bundleIdentifier();
}