====== Gradle Application Plugin ====== * [[https://docs.gradle.org/current/userguide/application_plugin.html|Gradle Application Plugin]] * [[https://dzone.com/articles/running-java-tasks-with-gradle|Gradle Goodness: Running Java Tasks With Gradle]] * Java Application을 실행하고, 의존 라이브러리를 묶어서 배포할 수 있는 zip 파일 배포본을 만들어주는 [[https://docs.gradle.org/current/userguide/distribution_plugin.html|The Distribution Plugin]]을 기본 포함한다. * [[https://docs.gradle.org/current/dsl/org.gradle.jvm.application.tasks.CreateStartScripts.html|CreateStartScripts]] ===== 설정 ===== application { // -Pmain=FQCN 으로 지정하게 함. 없으면 기본 class mainClassName = project.properties.get("main", 'package.fqcn.DefaultRunClassName') applicationDefaultJvmArgs += "--enable-preview" // java 파라미터 } 위와 같이 설정하면 ''main'' 클래스를 ''-Pmain=FQCN''으로 지정가능해진다. ./gradlew run -Pmain=kr.pe.kwonnam.Xxxx ===== 실행 ===== * ''run'' 태스크로 실행한다. * [[https://docs.gradle.org/current/dsl/org.gradle.api.tasks.JavaExec.html|JavaExec]] 타입의 태스크이므로 동일한 옵션을 적용할 수 있다. * 디버그 모드로 실행하기 gradle run --debug-jvm * 프로그램에 인자 넘기기 [[https://docs.gradle.org/current/javadoc/org/gradle/api/tasks/JavaExec.html#setArgsString-java.lang.String-|JavaExec]] gradle run --args="foo --bar" ===== 참조 ===== * [[https://www.baeldung.com/gradle-command-line-arguments|Passing Command Line Arguments in Gradle | Baeldung]]