Bem-vindo ao Kotlin!
É uma linguagem de programação de código aberto, de tipo estaticamente, suportada e desenvolvida pela JetBrains e colaboradores de código aberto.
Alguns links úteis:
O suporte para programação multiplataforma é um dos principais benefícios do Kotlin. Reduz o tempo gasto escrevendo e mantendo o mesmo código para diferentes plataformas, ao mesmo tempo que mantém a flexibilidade e os benefícios da programação nativa.
Este repositório está usando o recurso Gradle Toolchains para selecionar e provisionar automaticamente os JDKs necessários do projeto AdoptOpenJdk.
Como alternativa, ainda é possível fornecer JDKs necessários apenas por meio de variáveis de ambiente (consulte gradle.properties para obter nomes de variáveis compatíveis). Para garantir que o Gradle use apenas JDKs de variáveis ambientais - desative a detecção automática do conjunto de ferramentas do Gradle passando a opção -Porg.gradle.java.installations.auto-detect=false
(ou coloque-a em $GRADLE_USER_HOME/gradle.properties
).
No Windows, pode ser necessário adicionar configurações de caminhos longos ao repositório:
git config core.longpaths true
O projeto é construído com Gradle. Execute o Gradle para construir o projeto e executar os testes usando o seguinte comando no Unix/macOS:
./gradlew <tasks-and-options>
ou o seguinte comando no Windows:
gradlew <tasks-and-options>
Na primeira configuração do projeto, o gradle irá baixar e configurar as dependências em
intellij-core
faz parte do compilador de linha de comando e contém apenas APIs necessárias.idea-full
é um IntelliJ IDEA Community Edition completo para ser usado no módulo de plugin.Essas dependências são muito grandes, portanto, dependendo da qualidade da sua conexão com a Internet, você poderá enfrentar tempos limite para obtê-las. Nesse caso, você pode aumentar o tempo limite especificando os seguintes parâmetros de linha de comando na primeira execução:
./gradlew -Dhttp.socketTimeout=60000 -Dhttp.connectionTimeout=60000
clean
- resultados de compilação limposdist
- monta a distribuição do compilador na pasta dist/kotlinc/
install
- construa e instale todos os artefatos públicos no repositório maven localcoreLibsTest
- construa e execute testes stdlib, reflect e kotlin-testgradlePluginTest
- cria e executa testes de plugin gradlecompilerTest
- cria e executa todos os testes do compilador Para reproduzir a construção do TeamCity, use o sinalizador -Pteamcity=true
. As compilações locais não executam o programa e têm a compactação jar desabilitada por padrão.
OPCIONAL: Alguns artefatos, principalmente os plugins do Maven, são construídos separadamente com o Maven. Consulte bibliotecas/ReadMe.md para obter detalhes.
Para construir Kotlin/Native, consulte kotlin-native/README.md.
Recomenda-se usar a versão mais recente do Intellij IDEA (Community ou Ultimate Edition). Você pode baixar o IntelliJ IDEA aqui.
Após clonar o projeto, importe-o no IntelliJ escolhendo o diretório do projeto na caixa de diálogo Abrir projeto.
Para um trabalho prático com testes do compilador, é recomendado usar o Kotlin Compiler Test Helper
Temos um recurso de verificação de dependências habilitado no repositório para todas as compilações do Gradle. Gradle verificará os hashes (md5 e sha256) das dependências usadas e falhará nas compilações com erros Dependency verification failed
quando os artefatos locais estiverem ausentes ou tiverem hashes diferentes listados no arquivo verify-metadata.xml.
Espera-se que verification-metadata.xml
seja atualizado apenas com os commits que modificam a compilação. Existem algumas dicas sobre como realizar essas atualizações:
components
de verification-metadata.xml
para evitar o armazenamento de dependências antigas não utilizadas. Você pode usar o seguinte comando: # 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
do Gradle (verifique se a atualização está relacionada às suas alterações) ./gradlew --write-verification-metadata sha256,md5 -Pkotlin.native.enabled=true resolveDependencies
A tarefa resolveDependencies
resolve dependências para todas as plataformas, incluindo dependências baixadas por plug-ins.
Você também pode usar o script ./scripts/update-verification-metadata.sh
que inclui essas duas etapas
Ter em mente:
darwin
, mac
, osx
, linux
, windows
), lembre-se de adicioná-los à configuração implicitDependencies
ou atualizar a tarefa resolveDependencies
, se necessário. resolveDependencies
deve resolver todas as dependências, incluindo dependências para diferentes plataformas.local.properties
na pasta do projeto Kotlin, certifique-se de que ele não contenha kotlin.native.enabled=false
. Caso contrário, as dependências somente nativas não poderão ser adicionadas aos metadados de verificação. Isso ocorre porque local.properties
tem precedência maior do que -Pkotlin.native.enabled=true
especificado no comando Gradle. Publicamos versões -dev
com frequência.
Para versões -dev
você pode usar a lista de versões disponíveis e incluir este repositório maven:
maven( " https://maven.pkg.jetbrains.space/kotlin/p/kotlin/bootstrap " )
Kotlin é distribuído sob os termos da licença Apache (versão 2.0). Consulte a pasta de licença para obter detalhes.
Certifique-se de revisar as diretrizes de contribuição do Kotlin para saber como ajudar o projeto.