博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
疯狂Kotlin讲义连载之 命令行编译、运行Kotlin
阅读量:6812 次
发布时间:2019-06-26

本文共 3320 字,大约阅读时间需要 11 分钟。

今天介绍使用命令行环境编译、运行
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
编程基础,因此本书不会逐步介绍环境变量配置这些基础内容,如果读者需要学习环境变量配置这些基础知识,建议参考《
》一书。

第一个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月发售 敬请期待
往期连载:

相关书籍

转载地址:http://ltzzl.baihongyu.com/

你可能感兴趣的文章
自用PHP编码规范
查看>>
分解质因数
查看>>
[转载]阿里云服务器ubuntu安装java运行环境
查看>>
java5:运算
查看>>
防火墙配置IPsec ***
查看>>
codepro-Similar code compare
查看>>
Linux一些命令
查看>>
syn 同步!
查看>>
安装php扩展sphinx
查看>>
党援之众,无竞大义。群迷之中,无辩正论。
查看>>
svn http服务配置(1)
查看>>
Linux expect 用法
查看>>
shell脚本启动关闭tomcat,查看日志和备份项目
查看>>
玩转树莓派-RaspBerry,使用Python开发定制界面
查看>>
qt输出支持的数据库驱动
查看>>
OpenCV3中的机器学习算法
查看>>
96Boards(410C)中的Docker使用方法
查看>>
swift 里 1..2 和 1...2 的区别【chinaswift】
查看>>
我的友情链接
查看>>
有一种感情, 不叫爱情
查看>>