프로그래밍 언어/JAVA

Java에서 명령 줄 인수를 구문 분석하는 방법

Rateye 2021. 10. 6. 10:59
728x90
반응형
질문 : Java에서 명령 줄 인수를 어떻게 구문 분석합니까?

Java에서 명령 줄 인수를 구문 분석하는 좋은 방법은 무엇입니까?

답변

다음을 확인하십시오.

또는 자신의 롤 :

예를 들어 commons-cli 를 사용하여 2 개의 문자열 인수를 구문 분석하는 방법입니다.

import org.apache.commons.cli.*;

public class Main {


    public static void main(String[] args) throws Exception {

        Options options = new Options();

        Option input = new Option("i", "input", true, "input file path");
        input.setRequired(true);
        options.addOption(input);

        Option output = new Option("o", "output", true, "output file");
        output.setRequired(true);
        options.addOption(output);

        CommandLineParser parser = new DefaultParser();
        HelpFormatter formatter = new HelpFormatter();
        CommandLine cmd = null;//not a good practice, it serves it purpose 

        try {
            cmd = parser.parse(options, args);
        } catch (ParseException e) {
            System.out.println(e.getMessage());
            formatter.printHelp("utility-name", options);

            System.exit(1);
        }

        String inputFilePath = cmd.getOptionValue("input");
        String outputFilePath = cmd.getOptionValue("output");

        System.out.println(inputFilePath);
        System.out.println(outputFilePath);

    }

}

명령 줄에서 사용 :

$> java -jar target/my-utility.jar -i asd                                                                                       
Missing required option: o

usage: utility-name
 -i,--input <arg>    input file path
 -o,--output <arg>   output file
출처 : https://stackoverflow.com/questions/367706/how-do-i-parse-command-line-arguments-in-java
728x90
반응형