疯狂Kotlin讲义连载之 命令行编译、运行Kotlin

今天介绍使用命令行环境编译、运行 Kotlin ,与其他编程语言类似, Kotlin 同样需要下载并安装对应的 SDK ,接下来即可使用该 SDK 提供的命令来编译、运行 Kotlin 程序。

下载、配置Kotlin的SDK

下载和安装 Kotlin SDK 请按如下步骤进行。

1)登https://github.com/JetBrains/kotlin/releases,看到Kotlin SDK的最新发布本,即可看到如图

1.1 所示页面。本书成书之时, Kotlin SDK 的最新版本是 1.1.4-2 ,本书所有的案例也是基于该版本 SDK 的。


图1.1下载Kotlin SDK的页面

2 )单击如图 1.1 所示页面的链接,即可下载得到一个 kotlin-compiler-1.1.4-2.zip压缩包文件。

3 )将上面压缩文件解压到任意目录下,即可看到如下文件路径。


 bin:该路径下存放了Kotlin SDK的各种工具命令,常用的kolinckotlin等命令就放在该路径下。

 lib:该目录下包含了Kotlin的各种工具JAR包。

 licenseKotlin项目相关的各种授权文档。

在上面路径中, bin 路径是一个非常有用的路径,这个路径下包含了编译和运行 Kotlin 程序的 kotlinc kotlin 两个命令。除此之外,还包含了 kotlinc-jvm kotlinc-js 等工具命令。其中 kolinc
kotlinc-jvm 是一样的,都用于将 Kotlin 程序编译成适用于 JVM 的字节码文件,而 kotlin-js 则用于将 Kotlin 程序编译成 JavaScript 代码。

4 )将解压路径下的 bin 目录添加到系统的 PATH 环境变量中,这样即可保证操作系统能通过 PATH 环境变量找到 kotlinc kotlin等工具命令。

5 )将解压路径下 lib 子目录中 kotlin-stdlib.jar文件(该文件与kotlin-runtime.jar 文件相同,都代表了 Kotlin 的运行时环境库)添加到 CLASSPATH 环境变量中,这样即可保证运行 Kotlin 程序时能正常加载 Kotlin 的运行时环境库。

提示:本书假设读者已有最基本的 Java 编程基础,因此本书不会逐步介绍环境变量配置这些基础内容,如果读者需要学习环境变量配置这些基础知识,建议参考《 疯狂Java讲义 》一书。

第一个Kotlin程序

编辑 Kotlin
源代码可以使用任何无格式的文本编辑器,在 Windows 上可使用记事本( NotePad )、 EditPlus 等程序,在 Linux 平台上可使用 VI 工具等。

提示:编写 Kotlin 程序不要使用写字板,更不可使用 Word 等文档编辑器。因为写字板、 Word 等工具是有格式的编辑器,当使用它们编辑一份文档时,这个文档中会包含一些隐藏的格式化字符,这些隐藏字符会导致程序无法正常编译、运行。

在记事本中新建一个文本文件,并在该文件中输入如下代码:

程序清单:
codes\01\1.2\helloWorld.kt

fun main(args: Array<String>) {

println("Hello, World!")

}

编辑上面的Kotlin文件时,注意程序中粗体字标识的单词,Kotlin程序严格区分大小写。将上面文本文件保存为helloWorld.kt,该文件就是Kotlin程序的源程序,Kotlin源程序的文件名要求以.kt结尾。

Kotlin程序与Java程序不同,Kotlin支持函数式编程,因此Kotlin程序的程序入口只要一个main()函数作为入口,不需要将该main()函数放在任何类中。

提示:仔细看下上面的 main()函数,不难发现这个main 函数其实就是 Java 主类中的 main()方法的变体。只不过在Kotlin 语言中,函数也是一等公民,因此函数可以独立存在,而 Java 主类中 main() 方法必须放在类中声明。 Java 主类的 main ()方法需要声明一个String[] args 形参,而 Kotlin
mian()函数同样声明了args: Array<String> 形参 ——它们都是一个字符串数组类型的形参,这表明它们的本质是一样的,只是形式不同而已。至于 Kotlin 主函数前面的 fun 关键字,它专门用于声明函数; Swift 语言还使用 func 关键字声明函数呢,其实没有什么特别的,习惯不同而已。

编写好Kotlin程序的源代码后,接下来就应该编译该Kotlin源文件来生成字节码了。

编译、运行Kotlin程序

编译 Kotlin 程序需要使用 kotlinc kotlinc-jvm 命令(两个命令完全一样),因为前面已经把 kotlinc
命令所在的路径添加到了系统的 PATH 环境变量中,因此现在可以使用 kotlinc 命令来编译 Kotlin 程序了。

对于初学者而言,先掌握 kotlinc 命令的如下用法:

kotlinc -d destdir srcFile

在上面命令中, -d destdir kotlinc 命令的选项,用以指定编译生成的字节码文件的存放路径, destdir 只需是本地磁盘上的一个有效路径即可;而 srcFile Kotlinc 源文件所在的位置,这个位置既可以是绝对路径,也可以是相对路径。

通常,总是将生成的字节码文件放在当前路径下,当前路径可以用一点( . )来表示。在命令行窗口进入 helloWorld. kt文件所在路径,在该路径下输入如下命令:

kotlinc -d . helloWorld.kt

运行该命令后,在该路径下生成一个 HelloWorldKt.class 文件。

javac 编译器类似,使用 kotlinc编译文件只需要指定存放目标文件的位置即可,无须指定字节码文件的文件名。因为kotlinc 编译后生成的字节码文件有默认的文件名:如果 Kotlin 源程序中包含一个或多个函数, kotlinc 会额外生成一个生成文件,该生成文件的文件名是文件名首字母大写并添加 Kt 后缀,并以 .class 作为后缀名;如果 Kotlin 源程序中包含一个或多个类, kotlinc 则会为每个类生成一个字节码文件,文件名以源文件所定义的各个类的类名作为主文件名的,以 .class 作为后缀名。

事实上,指定目标文件存放位置的 -d 选项也是可省略的,如果省略该选项,则意味着将生成的字节码文件放在当前路径下。

可能有读者会感觉:这不就是《疯狂 Java 讲义》所介绍的内容吗? kotlinc 的用法与 javac 的用法何其相似啊?实际上这也是 Kotlin 设计者希望实现的效果: Java 是一门如此深入人心、影响深远的语言,拥有广泛的程序员基础,而 Kotlin 不仅借助于 JVM 作为运行平台,而且保持和 Java 详细的编译、运行方式,这样 Kotlin 也更容易被广大程序员所接受。

运行 Kotlin 程序可使用 kotlin java 命令(你没看错,可以用 java 命令),启动命令行窗口,进入
HelloWorldKt.class 所在的位置,在命令行输入如下命令。

java HelloWorldKt

运行上面命令,将看到如下输出:

Hello World!

这表明 Kotlin 程序运行成功

当然了, Kotlin 也专门提供了一个 kotlinm 命令来运行 Kotlin 程序,因此在命令行输入如下命令。

kotlin HelloWorldKt

运行上面命令,同样可看到如下输出:

Hello World!

以上内容节选自《疯狂Kotlin讲义》:一本让您最直接认识Kotlin的疯狂讲义



本书即将于2017年11月发售 敬请期待

往期连载:juejin.im/post/59c0b7…


相关书籍 疯狂Android讲义




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值