All Downloads are FREE. Search and download functionalities are using the official Maven repository.

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();
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy