명령줄에서 코틀린 코드를 컴파일 하고 실행
- kotlinc-jvm kotlin 명령어가 있다.
- jvm용 코틀린 sdk에는 코틀린 컴파일 명령어 kotlinc-jvm과 코틀린 실행 명령어 kotlin이 포함되어 있음
- kotlinc 는 kotlinc-jvm의 별칭이다.
Kotlin 또한 Java와 같이 JVM이 필요하다. Java를 공부할 때 정리해놓은 글입니다.
좀 더 세부적으로 써보자. GC에 대해서?
https://balldev.tistory.com/16
자바의 JVM메모리 구조
프로그램 메모리를 관리하고 최적화해준다. 자바 바이트코드(.class)를 운영체제에 맞는 시스템 명령어로 번역하여 실행 JVM은 자바 가상 머신으로 자바 프로그램을 실행시키기 위해 반드시 실행
balldev.tistory.com
코틀린 REPL(read eval print loop) - 대화형 셸에서 코틀린 실행
- kotlinc 실행
코틀린 스크립트 실행
- 코틀린 코드가 들어 있는 소스 파일을 .kts 확장자를 사용해 스크립트로 정의 가능
- 코틀린은 jvm 상에서 스크립트 언어로도 사용된다.
GraalVM으로 독립형 애플리케이션 만들기
원본 스크립트를 실행하는 방법 3가지
- kotlinc-jvm으로 컴파일 후 kotlin으로 실행
- 런타임을 포함해서 컴파일 후 결과jar 파일을 java로 실행
- kotlinc 로 컴파일 하고 graalVM으로 네이티브 이미지를 생성한 다음 명령어로 실행
그레이들에 코틀린 플러그인 추가하기
- jvm용 코틀린 컴파일 지원함
- https://plugins.gradle.org/
build.gradle.kts
// 예전 문법
//buildscript {
// repositories {
// mavenCentral()
// }
// dependencies {
// classpath(kotlin("gradle-plugin", version = "1.6.10"))
// }
//}
// 최신문법에서는 repositories 블록처럼 플러그인을 찾아야할 장소를 언급할 필요가 없고 apply 또한 자동 적용
plugins {
kotlin("jvm") version "1.6.10"
}
group "org.example"
version "1.0-SNAPSHOT"
repositories {
mavenCentral()
}
dependencies {
}
가장 큰 차이점
- 모든 문자열 큰따옴표
- 괄호 필수
- 코틀린은 : 대신 등호 기호를 사용해 값을 할당
그레이들을 이용해서 코틀린 프로젝트를 빌드하기
- 그레이들에서 코틀린 코드를 컴파일 하려면 dependences 추가해야함
// 자바 라이브러리 플러그인은 jvm을 기반으로 하는 프로젝트를 위한
// build, compileJava, compileTestJava, javadoc, jar 과 같은 많은 그레이들 작업이 정의되어 있음
plugins {
`java-library`
kotlin("jvm")version"1.6.10"
}
group"org.example"
version"1.0-SNAPSHOT"
repositories{
mavenCentral()
}
dependencies{
implementation(kotlin("stdlib"))
}
- ./gradlew build —dry-run
- ./gradlew build -m (—dry-run 의 축약형)
- 으로 그레이들이 실행하는 작업 목록을 볼 수 있음
'책 > 코틀린 쿡북' 카테고리의 다른 글
4장 - 함수형 프로그래밍 (0) | 2022.09.27 |
---|---|
3장 - 코틀린 객체 지향 프로그래밍 (0) | 2022.07.18 |
2장 - 코틀린 기초(문법들 유용하게 사용하기) (0) | 2022.07.09 |