Kotlin 中文文档
转载地址:http://www.tuicool.com/articles/faqyMzE
gitbook 墙内访问速度很糟糕 现在有了 墙内地址 啦 :)
国内服务器由 掘金 赞助
稀土掘金:挖掘最优质的互联网技术 / 联合编辑每日精选内容 / 移动端优质阅读体验
本书源码在github
记得要点 star star star
发现有翻译的不好的或者错误欢迎到 github 提issue
号外 号外 Kotlin 1.0 正式发布
Kotlin 是一个实用性很强的语言,专注于互通,安全,简洁,工具健全...
无缝支持 Java+Kotlin 项目,可以更少的使用样版代码,确保类型安全。
还换了logo :)
Kotlin LOC (软件规模代码行) 如下图

近期我会重新读一遍 Kotlin 官方文档 并对现在的这份文档进行更新(又立 flag 了) -- 2016.2.16
看示例:
- // Top-level build file where you can add configuration options common to all sub-projects/modules.
- buildscript {
- ext.kotlin_version = '1.0.6'
- repositories {
- jcenter()
- }
- dependencies {
- classpath 'com.android.tools.build:gradle:2.0.0'
- classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
- classpath "org.jetbrains.kotlin:kotlin-android-extensions:$kotlin_version"
- }
- }
- allprojects {
- repositories {
- jcenter()
- }
添加了版本号以及要使用的俩个依赖,如果需要还可以导入其他的依赖。
在app的目录(也就是你android代码目录)的build.gradle文件中添加简单的设置就好
看示例:
- buildscript {
- repositories {
- jcenter()
- }
- dependencies {
- classpath 'com.android.tools.build:gradle:2.0.0'
- }
- }
- def getDate() {
- return Calendar.getInstance().getTimeInMillis();
- }
- allprojects {
- repositories {
- jcenter()
- }
- }
- apply plugin: 'com.android.application'
- apply plugin: 'kotlin-android'
- dependencies {
- compile 'com.android.support:support-v4:23.1.1'
- compile 'com.android.support:appcompat-v7:23.1.1'
- compile 'com.android.support:design:23.1.1'
- compile 'com.android.support:preference-v7:23.1.1'
- compile 'org.apache.commons:commons-compress:1.10'
- compile 'commons-net:commons-net:3.3'
- compile 'com.github.zafarkhaja:java-semver:0.9.0'
- compile 'org.unbescape:unbescape:1.1.1.RELEASE'
- compile 'org.msgpack:msgpack:0.6.12'
- compile 'com.googlecode.juniversalchardet:juniversalchardet:1.0.3'
- compile 'org.tukaani:xz:1.5'
- compile 'ch.acra:acra:4.6.2'
- testCompile 'junit:junit:4.12'
- compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
- }
- android {
- compileSdkVersion 23
- buildToolsVersion '23.0.2'
- compileOptions {
- sourceCompatibility JavaVersion.VERSION_1_7
- targetCompatibility JavaVersion.VERSION_1_7
- }
- packagingOptions {
- exclude 'META-INF/LICENSE.txt'
- exclude 'META-INF/NOTICE.txt'
- }
- defaultConfig {
- minSdkVersion 9
- targetSdkVersion 22
- versionCode 4
- versionName "1.7.0-unstable"
- if(System.getenv("NIGHTLY_BUILD")) {
- versionName += "+" + System.getenv("NIGHTLY_BUILD_COMMIT").substring(0, 7)
- }
- }
- lintOptions {
- if (System.getenv("NIGHTLY_BUILD")) {
- checkReleaseBuilds false
- }
- abortOnError false
- }
- signingConfigs {
- release {
- if (System.getenv("KEYSTORE_FILE") != null) {
- storeFile = file(System.getenv("KEYSTORE_FILE"))
- storePassword = System.getenv("KEYSTORE_PWD")
- keyAlias = System.getenv("KEYSTORE_ALIAS")
- keyPassword = System.getenv("KEYSTORE_ALIAS_PWD")
- }
- return true
- }
- }
- buildTypes {
- debug {
- buildConfigField "java.util.Date", "BUILD_TIME", "new java.util.Date(" + getDate() + "L)"
- buildConfigField "String", "BUILD_NAME", "\"" + System.getenv("USER") + "\"";
- minifyEnabled false
- shrinkResources false
- debuggable true
- jniDebuggable true
- zipAlignEnabled true
- multiDexEnabled true
- }
- release {
- buildConfigField "java.util.Date", "BUILD_TIME", "new java.util.Date(" + getDate() + "L)"
- buildConfigField "String", "BUILD_NAME", "\"" + System.getenv("USER") + "\"";
- if (System.getenv("KEYSTORE_FILE") != null) {
- signingConfig signingConfigs.release
- }
- multiDexEnabled true
- return true
- }
- }
- sourceSets {
- main.java.srcDirs += 'src/main/kotlin'
- }
- }
- repositories {
- mavenCentral()
- }
主要添加了有3个地方:
1、
- <span style="white-space:pre"> </span>apply plugin: 'kotlin-android'
2、
- <span style="white-space:pre"> </span>compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
3、
- android{
- ......
- sourceSets {
- main.java.srcDirs += 'src/main/kotlin'
- }
- }
这样就可以正常使用了。
如果出现
Execution failed for task ':app:clean'.
> Unable to delete file: C:\Users\User\KotlinGameEngine\app\build\intermediates\exploded-aar\com.android.support\appcompat-v7\23.0.1\jars\classes.jar
类似这样的问题,那么只要在app目录下的build.gradle文件中添加task:
- task clean(type: Exec) {
- ext.lockhunter = '\"C:\\LockHunter.exe\"'
- def buildDir = file(new File("build"))
- commandLine 'cmd', "$lockhunter", '/delete', '/silent', buildDir
- }
如果出现Unresolved reference: kotlinx这样的问题,那么需要在app目录下的build.gradle文件中添加:
apply plugin: 'kotlin-android-extensions'
以及要确保classpath配置了classpath "org.jetbrains.kotlin:kotlin-android-extensions:$kotlin_version"
- 顶
- 1
- 踩
- 1
- 个人资料
Kotlin 中文文档的更多相关文章
- Reactor3 中文文档(用户手册)
文章很长,建议收藏起来,慢慢读! 疯狂创客圈为小伙伴奉上以下珍贵的学习资源: 疯狂创客圈 经典图书 : <Netty Zookeeper Redis 高并发实战> 面试必备 + 大厂必备 ...
- Phoenix综述(史上最全Phoenix中文文档)
个人主页:http://www.linbingdong.com 简书地址:http://www.jianshu.com/users/6cb45a00b49c/latest_articles 网上关于P ...
- Chart.js中文文档-雷达图
雷达图或蛛网图(Radar chart) 简介 A radar chart is a way of showing multiple data points and the variation bet ...
- Knockout中文开发指南(完整版API中文文档) 目录索引
a, .tree li > span { padding: 4pt; border-radius: 4px; } .tree li a { color:#46cfb0; text-decorat ...
- ReactNative官方中文文档0.21
整理了一份ReactNative0.21中文文档,提供给需要的reactnative爱好者.ReactNative0.21中文文档.chm 百度盘下载:ReactNative0.21中文文档 来源: ...
- java中文文档官方下载
一直在寻找它,今天无意之间终于发现它了! http://download.oracle.com/technetwork/java/javase/6/docs/zh/api/overview-summa ...
- Spring中文文档
前一段时间翻译了Jetty的一部分文档,感觉对阅读英文没有大的提高(*^-^*),毕竟Jetty的受众面还是比较小的,而且翻译过程中发现Jetty的文档写的不是很好,所以呢翻译的兴趣慢慢就不大了,只能 ...
- jQuery 3.1 API中文文档
jQuery 3.1 API中文文档 一.核心 1.1 核心函数 jQuery([selector,[context]]) 接收一个包含 CSS 选择器的字符串,然后用这个字符串去匹配一组元素. jQ ...
- jQuery EasyUI API 中文文档 - ComboGrid 组合表格
jQuery EasyUI API 中文文档 - ComboGrid 组合表格,需要的朋友可以参考下. 扩展自 $.fn.combo.defaults 和 $.fn.datagrid.defaults ...
随机推荐
- Spark standalone运行模式(图文详解)
不多说,直接上干货! 请移步 Spark standalone简介与运行wordcount(master.slave1和slave2) Spark standalone模式的安装(spark-1.6. ...
- Mediator 基于内存的发布订阅
Github Mediator 使用方法 /// <summary> /// 返回值 BaseEntity /// </summary> public class Ping1 ...
- 多线程与MySQL(十)
1.1 多线程 在传统操作系统中,每个进程有一个地址空间,而且默认就有一个控制线程 线程顾名思义,就是一条流水线工作的过程,一条流水线必须属于一个车间,一个车间的工作过程是一个进程 车间负责把资源整合 ...
- Broadcast Receiver广播接收器
1.概述 广播接收器不仅能接受来自系统的内容,也可以接受来自其他app的内容.广播分为标准广播和有序广播. 2.标准广播 一种完全异步执行的广播,在广播发出之后几乎所有的广播接收器都在同一时刻接受到广 ...
- @DateTimeFormat无效原因
一般都是使用@DateTimeFormat把传给后台的时间字符串转成Date,使用@JsonFormat把后台传出的Date转成时间字符串,但是@DateTimeFormat只会在类似@Request ...
- JavaScript:理解执行环境、作用域链和活动对象
作用域的原理,对JS将如何解析标识符做出了解答.而作用域的形成与执行环境和活动对象紧密相关. 我们对于JS标识符解析的判断,存在一个常见误区 首先,看一个关于JS标识符解析的问题 ,源于风雪之隅提出的 ...
- HDU 2256 Problem of Precision( 矩阵快速幂 )
链接:传送门 题意:求式子的值,并向下取整 思路: 然后使用矩阵快速幂进行求解 balabala:这道题主要是怎么将目标公式进行化简,化简到一个可以使用现有知识进行解决的一个过程!菜的扣脚...... ...
- POJ 2356 Find a multiple( 鸽巢定理简单题 )
链接:传送门 题意:题意与3370类似 注意:注意输出就ok,输出的是集合的值不是集合下标 /***************************************************** ...
- NOIP2016 DAY1 T1 玩具谜题
题目描述 小南有一套可爱的玩具小人,它们各有不同的职业. 有一天,这些玩具小人把小南的眼镜藏了起来.小南发现玩具小人们围成了一个圈,它们有的面朝圈内,有的面朝圈外.如下图: 这时 singer 告诉小 ...
- [poj 2976] Dropping tests (分数规划 二分)
原题: 传送门 题意: 给出n个a和b,让选出n-k个使得(sigma a[i])/(sigma b[i])最大 直接用分数规划.. code: //By Menteur_Hxy #include & ...