<dependency>
<groupId>com.github.hatimiti</groupId>
<artifactId>lineargs</artifactId>
<version>1.1.3</version>
</dependency>
import com.github.hatimiti.lineargs.annotation.LineArgsOption;
public class CommandLineOptions {
@LineArgsOption(
name = "input",
description = "Input file path",
required = true
)
private String inputFile;
@LineArgsOption(
name = "output",
description = "Output file path",
defaultValue = "./output.txt"
)
private String outputFile;
// Getters and Setters
// ...
}
import com.github.hatimiti.lineargs.LineArgs;
public class Main {
public static void main(String[] args) {
CommandLineOptions options = new CommandLineOptions();
LineArgs lineArgs = new LineArgs(args);
lineArgs.populate(options);
System.out.println("input: " + options.getInputFile());
System.out.println("output: " + options.getOutputFile());
}
}
java Main --input /path/to/input.txt --output /path/to/output.txt