2014-11-20 1 views
0

내 프로젝트에서 Gradle을 기반으로 명령 줄을 구문 분석하고 옵션 "-foo=..."을 가져와야합니다. Getopt를 사용하려고했지만 몇 가지를 이해할 수 없습니다.어떻게 사용하는 GetOpt 및 LongOpt gradle?

명령 줄에서 "-foo"를 읽으려면 LongOpt를 사용해야합니까? "gradle run"명령을 사용하여 명령 줄에 인수를 전달할 수 있습니까?

p.s. 내 나쁜 영어

답변

1

gradle run 인수없이 응용 프로그램을 시작하기위한 것입니다. 당신의 주장이 매우 단순하다면 해킹 할 수 있습니다.

예컨대 : gradle run -PrunArgs="arg1 arg2 arg3"

이 입력 꽤 복잡하고 인수에 공백이 탈출하거나이해야하는 경우, 취급이 어렵게 될 것와

apply plugin: 'application' 

run { 
    if (project.hasProperty("runArgs")) { 
     args project.runArgs.split() 
    } 
} 

실행을. 이 시점에서 나는 단지 gradle installApp을 실행 한 다음 적절한 시작 스크립트 (build/install/<app>/bin/<app> arg1 arg2 arg3)를 실행하는 것이 좋습니다.

물론 더 정교한 작업을 수행 할 수 있습니다. http://forums.gradle.org/gradle/topics/how_can_i_provide_command_line_args_to_application_started_with_gradle_run

0

사용 build.gradle에서

gradle -q -Pfoo=bar printProps 

죄송

task printProps << { 
    println foo 
} 

출력

bar 

here