코틀린에 오신 것을 환영합니다!
JetBrains 및 오픈 소스 기여자가 지원하고 개발한 오픈 소스 정적 유형 프로그래밍 언어입니다.
몇 가지 유용한 링크:
다중 플랫폼 프로그래밍 지원은 Kotlin의 주요 이점 중 하나입니다. 네이티브 프로그래밍의 유연성과 이점을 유지하면서 다양한 플랫폼에 대해 동일한 코드를 작성하고 유지하는 데 소요되는 시간을 줄여줍니다.
이 저장소는 Gradle 툴체인 기능을 사용하여 AdoptOpenJdk 프로젝트에서 필요한 JDK를 선택하고 자동 프로비저닝합니다.
또는 환경 변수를 통해 필수 JDK만 제공할 수도 있습니다(지원되는 변수 이름은 gradle.properties 참조). Gradle이 환경 변수의 JDK만 사용하도록 하려면 -Porg.gradle.java.installations.auto-detect=false
옵션을 전달하여 Gradle 툴체인 자동 감지를 비활성화합니다(또는 $GRADLE_USER_HOME/gradle.properties
에 입력).
Windows에서는 저장소에 긴 경로 설정을 추가해야 할 수도 있습니다.
git config core.longpaths true
이 프로젝트는 Gradle로 빌드되었습니다. Unix/macOS에서 다음 명령을 사용하여 Gradle을 실행하여 프로젝트를 빌드하고 테스트를 실행합니다.
./gradlew <tasks-and-options>
또는 Windows에서는 다음 명령을 사용하세요.
gradlew <tasks-and-options>
첫 번째 프로젝트 구성에서 Gradle은 종속성을 다운로드하고 설정합니다.
intellij-core
명령줄 컴파일러의 일부이며 필요한 API만 포함합니다.idea-full
은 플러그인 모듈에서 사용할 수 있는 완전한 IntelliJ IDEA Community Edition입니다.이러한 종속성은 상당히 크기 때문에 인터넷 연결 품질에 따라 이를 가져오는 데 시간이 초과될 수 있습니다. 이 경우 처음 실행 시 다음 명령줄 매개변수를 지정하여 시간 초과를 늘릴 수 있습니다.
./gradlew -Dhttp.socketTimeout=60000 -Dhttp.connectionTimeout=60000
clean
- 클린 빌드 결과dist
- 컴파일러 배포판을 dist/kotlinc/
폴더로 어셈블합니다.install
- 모든 공용 아티팩트를 로컬 Maven 저장소에 빌드하고 설치합니다.coreLibsTest
- stdlib, 반영 및 kotlin 테스트 테스트를 빌드하고 실행합니다.gradlePluginTest
- Gradle 플러그인 테스트 빌드 및 실행compilerTest
- 모든 컴파일러 테스트를 빌드하고 실행합니다. TeamCity 빌드를 재현하려면 -Pteamcity=true
플래그를 사용하세요. 로컬 빌드는 proguard를 실행하지 않으며 기본적으로 jar 압축이 비활성화되어 있습니다.
선택사항: 주로 Maven 플러그인과 같은 일부 아티팩트는 Maven과 별도로 빌드됩니다. 자세한 내용은 library/ReadMe.md를 참조하세요.
Kotlin/Native를 빌드하려면 kotlin-native/README.md를 참조하세요.
Intellij IDEA(Community 또는 Ultimate Edition)의 최신 버전을 사용하는 것이 좋습니다. 여기에서 IntelliJ IDEA를 다운로드할 수 있습니다.
프로젝트를 복제한 후 프로젝트 열기 대화 상자에서 프로젝트 디렉터리를 선택하여 IntelliJ에서 프로젝트를 가져옵니다.
컴파일러 테스트를 간편하게 수행하려면 Kotlin Compiler Test Helper를 사용하는 것이 좋습니다.
모든 Gradle 빌드에 대해 저장소에서 종속성 확인 기능이 활성화되어 있습니다. Gradle은 사용된 종속성의 해시(md5 및 sha256)를 확인하고 로컬 아티팩트가 없거나 verify-metadata.xml 파일에 나열된 다른 해시가 있는 경우 Dependency verification failed
오류로 인해 빌드가 실패합니다.
verification-metadata.xml
은 빌드를 수정하는 커밋으로만 업데이트되어야 합니다. 이러한 업데이트를 수행하는 방법에 대한 몇 가지 팁이 있습니다.
verification-metadata.xml
의 components
섹션을 삭제하세요. 다음 명령을 사용할 수 있습니다: # macOS
sed -i ' ' -e ' /<components>/,/</components>/d ' gradle/verification-metadata.xml
# Linux & Git for Windows
sed -i -e ' /<components>/,/</components>/d ' gradle/verification-metadata.xml
--write-verification-metadata
명령을 사용하여 종속성을 다시 생성합니다(업데이트가 변경 사항과 관련된지 확인). ./gradlew --write-verification-metadata sha256,md5 -Pkotlin.native.enabled=true resolveDependencies
resolveDependencies
작업은 플러그인에서 다운로드한 종속성을 포함하여 모든 플랫폼에 대한 종속성을 해결합니다.
이 두 단계를 모두 포함하는 ./scripts/update-verification-metadata.sh
스크립트를 사용할 수도 있습니다.
명심하세요:
darwin
, mac
, osx
, linux
, windows
)에 언급된 OS에 대한 종속성을 추가하는 경우 이를 implicitDependencies
구성에 추가하거나 필요한 경우 resolveDependencies
작업을 업데이트해야 합니다. resolveDependencies
다양한 플랫폼에 대한 종속성을 포함한 모든 종속성을 해결해야 합니다.local.properties
파일이 있는 경우 kotlin.native.enabled=false
포함되어 있지 않은지 확인하세요. 그렇지 않으면 네이티브 전용 종속성이 확인 메타데이터에 추가되지 않을 수 있습니다. 이는 local.properties
Gradle 명령에 지정된 -Pkotlin.native.enabled=true
보다 우선순위가 높기 때문입니다. 우리는 -dev
버전을 자주 게시합니다.
-dev
버전의 경우 사용 가능한 버전 목록을 사용하고 다음 Maven 저장소를 포함할 수 있습니다.
maven( " https://maven.pkg.jetbrains.space/kotlin/p/kotlin/bootstrap " )
Kotlin은 Apache 라이선스(버전 2.0)의 조건에 따라 배포됩니다. 자세한 내용은 라이센스 폴더를 참조하십시오.
프로젝트를 돕는 방법을 알아보려면 Kotlin의 기여 가이드라인을 꼭 검토하세요.