Kotlin 和 Gradle 应用程序简单入门

yufei       7 月 前       221

今天练习 Kotlin 的时候突发奇想,想使用 Gradle 代替 Maven 作为依赖管理工具。

一开始我以为很复杂,没想到 gradle init 一个命令就搞定了,难怪百度 gradle kotlin 没啥结果,囧

前提

  1. 安装了 Gradle,安装教程请参考 Gradle 基础教程 - 安装

  2. 安装了 Kotlin

初始化

创建目录

mkdir mydemo
cd mydemo

初始化 Gradle 项目

gradle init 

出现以下提示时输入 6

Select type of project to generate:
  1: basic
  2: groovy-application
  3: groovy-library
  4: java-application
  5: java-library
  6: kotlin-application
  7: kotlin-library
  8: scala-library
Enter selection (default: basic) [1..8] 6

接着出现以下提示时选择

Select build script DSL:
  1: groovy
  2: kotlin
Enter selection (default: kotlin) [1..2] 1

为什么选择 groovy 是因为 kotlin 没出来之前用的就是 groovy,熟门熟路了。

出现以下提示时输入 mydemo,其实就是默认的,按回车键就可以了

Project name (default: mydemo): mydemo

出现以下提示时输入 my.demo

Source package (default: mydemo): my.demo

按下回车键之后就会开始初始化了,初始化完成后的目录结构如下

.
├── build.gradle
├── gradle
│   └── wrapper
│       ├── gradle-wrapper.jar
│       └── gradle-wrapper.properties
├── gradlew
├── gradlew.bat
├── settings.gradle
└── src
    ├── main
    │   ├── kotlin
    │   │   └── my
    │   │       └── demo
    │   │           └── App.kt
    │   └── resources
    └── test
        ├── kotlin
        │   └── my
        │       └── demo
        │           └── AppTest.kt
        └── resources

Gradle 项目最重要的就是两个文件 settings.gradlebuild.gradle,我们打交道的主要还是 build.gradle

build.gradle

build.gradle 里的默认内容为

注释有删减

// 定义 Gradle 项目用到的插件
plugins {
    // 定义 Kotlin 的 `jvm` 版本,默认即可,默认情况下使用的时当前最新的版本
    id 'org.jetbrains.kotlin.jvm' version '1.3.11'

    // 用于定义该 Gradle 项目是一个命令行应用程序
    id 'application'
}

// 定义第三方依赖的源仓库和顺序
repositories {
    // 所有依赖都使用 jcenter 作为源仓库
    jcenter()
}

dependencies {
    // 指定 Kotlin 的标准库使用 JDK 8 的标准库
    implementation 'org.jetbrains.kotlin:kotlin-stdlib-jdk8'

    // 指定运行测试时使用的 Kotlin 测试库
    testImplementation 'org.jetbrains.kotlin:kotlin-test'

    //  指定运行测试时使用 Kotlin JUnit integration.
    testImplementation 'org.jetbrains.kotlin:kotlin-test-junit'
}

// 定义入口类
mainClassName = 'my.demo.AppKt'

运行 gradle run

我们先不对文件做任何修改,直接运行 gradle run 看看

在经过下载一系列第三方依赖后,输出结果如下

> Task :run
Hello world.

Deprecated Gradle features were used in this build, making it incompatible with Gradle 6.0.
Use '--warning-mode all' to show the individual deprecation warnings.
See https://docs.gradle.org/5.1.1/userguide/command_line_interface.html#sec:command_line_warnings

BUILD SUCCESSFUL in 31s
3 actionable tasks: 3 executed

main.kt

接下来我们来看看 main.kt 的内容

/*
 * This Kotlin source file was generated by the Gradle 'init' task.
 */
package my.demo

class App {
    val greeting: String
        get() {
            return "Hello world."
        }
}

fun main(args: Array<String>) {
    println(App().greeting)
}

很简单有没有

目前尚无回复
简单教程 = 简单教程,简单编程
简单教程 是一个关于技术和学习的地方
现在注册
已注册用户请 登入
关于   |   FAQ   |   我们的愿景   |   广告投放   |  博客

  简单教程,简单编程 - IT 入门首选站

Copyright © 2013-2018 简单教程 twle.cn All Rights Reserved.