Kotlin 是一种静态类型的编程语言,可在 Java 虚拟机上运行,也可以编译为 JavaScript 源代码。其主要发展来自位于俄罗斯圣彼得堡的 JetBrains 程序员团队。虽然语法与 Java 不兼容,但 Kotlin 旨在与 Java 代码进行交互操作,并且依赖于现有 Java 类库(例如集合框架)的 Java 代码。这个名字来自圣彼得堡附近的科特林岛(Kotlin Island)。—— wikipedia

  1. Kotlin 初识
  2. Kotlin 入门:在 IDEA 中运行 Kotlin 程序
  3. 用命令行编译 Kotlin 程序

1、Kotlin 初识

  1. 什么是 Kotlin?Kotlin (programming language) - Wikipedia
  2. Kotlin 作为服务器端开发语言与 Java 相比会如何?Kotlin作为服务器端开发语言与Java相比会如何? - 知乎
  3. 为什么使用 Kotlin,以及 Kotlin 的入门。Kotlin Programming Language
  4. Kotlin 的相关资讯。Kotlin (@kotlin) · Twitter
  5. kotlin-docs & Programming Kotlin http://pan.baidu.com/s/1hrHLtfY

2、Kotlin 入门:在 IDEA 中运行 Kotlin 程序

Step-1: 前提是需要有一个较高版本的 IntelliJ IDEA,先创建一个新的 Kotlin工程,名字随便取。

Step-2: 创建一个 Kotlin类 —— hello.kt

Step-3: 编写 Kotlin代码 并运行程序。

/**
* Created by xkfx on 2017/6/7.
*/
fun main(args: Array<String>) {
println("Hello world!");
}

3、在命令行编译 Kotlin 程序

1、在 Windows 上安装 Kotlin

在 GitHub 上下载 kotlin-compiler-1.1.2-2.zip,网速慢的话点这里。

将压缩包解压放在自己喜欢的位置,然后仿照“配置JDK环境变量”的方式配置 Kotlin 的环境变量。如果在命令行下输入 kotlinc 显示类似如下界面,说明配置成功。

编写一个 hello.kt,如下

fun main(args: Array<String>) {
println("Hello, World!")
}

使用 kotlinc hello.kt 编译上面的文件,这时会在同一目录下生成一个 HelloKt.class,尝试用 java命令来运行 HelloKt,结果会是 NoClassDefFoundError!

那么,应该如何运行这段代码呢?根据官网的介绍大概是以下两种方式。

方式一:使用 Kotlin 命令运行这段代码

D:\labs>kotlinc hello.kt

D:\labs>kotlin HelloKt
Hello, World!

方式二:使用本地JVM 运行含有 Kotlin代码的 JAR包

官方的命令为:kotlinc hello.kt -include-runtime -d hello.jar

运行上述命令之后将得到一个hello.jar,运行这个JAR包:java -jar -hello.jar

D:\labs>java -jar hello.jar
Hello, World!

这样就证明了——Kotlin 是完全与原始JVM 兼容的!

Kotlin尝试之一:写代码前的准备的更多相关文章

  1. 【JavaScript】写代码前的准备

    1.搭建开发环境,编辑器推荐HBuilder,浏览器用谷歌. 2.编写一个HelloWorld程序. HelloWorld.html <!DOCTYPE html> <html> ...

  2. [No000018B]写代码要用 Vim,因为越难入门的工具回报越大

    编者按:现在的技术界有一种倾向,将软件/应用操作简单化,用户能轻松上手.但是工具是否强大,取决于它能否灵活地满足使用者的各种需要.有些工具虽然很难入门,学会了便能对自己的操作有更深的层次的了解,能赋予 ...

  3. Java 8 到 Java 14,改变了哪些你写代码的方式?

    前几天,JDK 14 正式发布了,这次发布的新版本一共包含了16个新的特性. 其实,从Java8 到 Java14 ,真正的改变了程序员写代码的方式的特性并不多,我们这篇文章就来看一下都有哪些. La ...

  4. 让 AI 为你写代码 - 体验 Github Copilot

    前几天在群里看到有大神分享 Copoilot AI 写代码,看了几个截图有点不敢相信自己的眼睛.今天赶紧自己也来体验一下 Copoilot AI 写代码到底有多神奇. 申请 现在 Copoilot 还 ...

  5. 使用 .NET WinForm 开发所见即所得的 IDE 开发环境,实现不写代码直接生成应用程序

    直接切入正题,这是我09年到11年左右业余时间编写的项目,最初的想法很简单,做一个能拖拖拽拽就直接生成应用程序的工具,不用写代码,把能想到的业务操作全部封装起来,通过配置的方式把这些业务操作组织起来运 ...

  6. ClownFish:比手写代码还快的通用数据访问层

    http://www.cnblogs.com/fish-li/archive/2012/07/17/ClownFish.html 阅读目录 开始 ClownFish是什么? 比手写代码还快的执行速度 ...

  7. 【腾讯Bugly干货分享】深入理解 ButterKnife,让你的程序学会写代码

    本文来自于腾讯bugly开发者社区,非经作者同意,请勿转载,原文地址:http://dev.qq.com/topic/578753c0c9da73584b025875 0.引子 话说我们做程序员的,都 ...

  8. 手写代码自动实现自动布局,即Auto Layout的使用

    手写代码自动实现自动布局,即Auto Layout的使用,有需要的朋友可以参考下. 这里要注意几点: 对子视图的约束,若是基于父视图,要通过父视图去添加约束. 对子视图进行自动布局调整,首先对UIVi ...

  9. jQuery 之父:每天写代码

    去年秋天我的支线代码项目 遇到了一些问题,项目进展不足,而且我没法找到一个完成更多代码的方法(在不影响我在Khan Academy方面的工作的前提下). 我主要在周末进行我的支线,当然有时候也在晚上进 ...

随机推荐

  1. 【转载】32复用时钟AFIO开启情况

    原文:http://blog.csdn.net/u012411027/article/details/44217313 百度了很多结果,打开看几乎全是下面这篇文章,真是天下文章一大抄啊.我也抄一下吧. ...

  2. 【从无到有】HTML的初识——part1

    Ⅰ.HTML的初识 1.HTML:超文本标签语言(网页源代码) 2.html的基本结构: <html> <head> <meta charset="utf-8& ...

  3. CF #349 div1 B. World Tour

    题目链接:http://codeforces.com/problemset/problem/666/B 大意是给一张有向图,选取四个点,使得走这四个点,任意两个点之间走最短路,总距离最长. 3000个 ...

  4. bzoj4828 [Hnoi2017]大佬

    Description 人们总是难免会碰到大佬.他们趾高气昂地谈论凡人不能理解的算法和数据结构,走到任何一个地方,大佬的气场就能让周围的人吓得瑟瑟发抖,不敢言语.你作为一个OIER,面对这样的事情非常 ...

  5. 通过 bootloader 向其传输启动参数

    作者:Younger Liu, 本作品采用知识共享署名-非商业性使用-相同方式共享 3.0 未本地化版本许可协议进行许可. Linux提供了一种通过bootloader向其传输启动参数的功能,内核开发 ...

  6. linux系统中.bashrc的妙用

    一.有何作用 .bashrc - The individual per-interactive-shell startup file. .bashrc - 主要保存个人的个性化设置,如命令别名.路径等 ...

  7. iOS开发 - Swift使用GCD实现计时器功能

    前言 开发中,经常会用到定时执行网络请求.倒计时.计时器等功能,本篇文章介绍在iOS开发中,Swift怎样使用GCD实现这些功能. 执行一次 下面的代码将会在5秒后执行,且只执行一次. let tim ...

  8. HashSet实现原理

    /* HashSet的实现原理: 往HashSet添加元素的时候,HashSet会先调用元素的hashCode方法得到元素的哈希值 , 然后通过元素 的哈希值经过移位等运算,就可以算出该元素在哈希表中 ...

  9. Haoop基本操作

    一.HDFS的常用操作 (一).HDFS文件的权限 与Linux文件权限类似 r: read; w:write; x:execute,权限x对于文件忽略,对于文件夹表示是否允许访问其内容. 如果Lin ...

  10. scala读取jar包外配置文件的方式

    在scala的开发过程中,经常会修改程序的参数,将这些参数放到配置文件中避免了重复编译,打包的过程 这里给出读取配置文件的三种方式 方式一: 这是最常见的读取配置文件方式 val postgprop ...