本节记录如何用Kotlin初步搭建一个SpringBoot的环境(使用Gradle自动化构建工具)。

1、新建一个Gradle的Kotlin

配置完成后,build.gradle的配置如下:

buildscript {
    ext.kotlin_version = '1.2.0'

    repositories {
        mavenCentral()
    }
    dependencies {
        //Kotlin Gradle插件
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
    }
}

group 'com.SpringBootUseKotlin.Code'
version '1.0-SNAPSHOT'

apply plugin: 'java'
apply plugin: 'kotlin'

sourceCompatibility = 1.8

repositories {
    mavenCentral()
}

dependencies {
    compile "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlin_version"
    testCompile group: 'junit', name: 'junit', version: '4.12'
}

compileKotlin {
    kotlinOptions.jvmTarget = "1.8"
}
compileTestKotlin {
    kotlinOptions.jvmTarget = "1.8"
}

2、配置SpringBoot的相关内容

在build.gradle的构建脚本buildscript中新增

//配置SpringBoot的版本ext.springbiit_version = '1.5.4.RELEASE'

在构建脚本中添加依赖

//SpringBoot Gradle插件classpath "org.springframework.boot:spring-boot-gradle-plugin:$springboot_version"

//Kotlin整合SpringBoot的默认无参构造函数,默认把所有的类设置open类插件classpath("org.jetbrains.kotlin:kotlin-noarg:$kotlin_version")classpath("org.jetbrains.kotlin:kotlin-allopen:$kotlin_version")

到此Kotlin官网的配置就基本完成了(application.properties中的配置暂不考虑)

3、添加主类和main函数。

在包com.SpringBootUseKotlin.Code中新增Kotlin的类myMainClass

package com.SpringBootUseKotlin.Code

import org.springframework.boot.SpringApplication
import org.springframework.boot.autoconfigure.SpringBootApplication

@SpringBootApplication
open class myMainClass{

}

fun main(args:Array<String>){
    SpringApplication.run(myMainClass::class.java, *args)
}

上述主类是开发完成后的样子,实际上还缺少了很多配置:

上图的标红的问题可以通过配置解决,在build.gradle中,添加插件和依赖项:

apply plugin: 'org.springframework.boot'
dependencies {
    compile 'org.springframework.boot:spring-boot-starter-web'
}

4、右键myMainClass,点击运行,看到下面的输出,即初步配置完成。

SpringBoot在Kotlin中的实现(一)的更多相关文章

  1. SpringBoot在Kotlin中的实现(二)

    根据现在的开发模式和网上的一些资料,SpringBoot需要对业务和操作进行分层,通常分为controller.entity.service.respository等结构.下面以Kotlin官网的例子 ...

  2. Kotlin中变量不同于Java: var 对val(KAD 02)

    原文标题:Variables in Kotlin, differences with Java. var vs val (KAD 02) 作者:Antonio Leiva 时间:Nov 28, 201 ...

  3. SpringBoot拦截器中Bean无法注入(转)

    问题 这两天遇到SpringBoot拦截器中Bean无法注入问题.下面介绍我的思考过程和解决过程: 1.由于其他bean在service,controller层注入一点问题也没有,开始根本没意识到Be ...

  4. spring-boot的spring-cache中的扩展redis缓存的ttl和key名

    原文地址:spring-boot的spring-cache中的扩展redis缓存的ttl和key名 前提 spring-cache大家都用过,其中使用redis-cache大家也用过,至于如何使用怎么 ...

  5. springboot在eclipse中运行使用开发配置,打包后运行使用生产环境默认配置

    java命令运行springboot jar文件,指定配置文件可使用如下两个参数中其中一个 --spring.config.location=配置文件路径 -Dspring.profiles.acti ...

  6. SpringBoot Mybatis项目中的多数据源支持

    1.概述 有时项目里里需要抽取不同系统中的数据源,需要访问不同的数据库,本文介绍在Springboot+Mybatis项目中如何支持多数据源操作. 有需要的同学可以下载 示例代码 项目结构如下: 2. ...

  7. Kotlin中与Java不同的地方 需要注意

    1. 在Kotlin中不会将基本数据类型的自动转型比如 scriptIntrinsicBlur.setRadius(25) //报错, 必须写成 25f 或者 调用.toFloat() 2.Kotli ...

  8. Kotlin中三元运算符

    int a = 10;int b = 11;int c = a > b ? a : b; 到了 kotlin中 val a = 10val b = 11val c = if (a > b) ...

  9. kotlin中“==”和“===”的区别

    code 1 fun main(args: Array<String>) { val a : Int = 1000 println(a == a) //true println(a === ...

随机推荐

  1. vue-cli、create-react-app 项目如何查看打包分析?

    vue-cli.create-react-app 项目如何查看打包分析? 项目 如何查看打包分析 vue-cli 创建的项目 已经集成 webpack-bundle-analyzer,运行npm ru ...

  2. 2、Zookeeper端口和ip修改

    clientPort=2181clientPortAddress=192.168.0.120

  3. 关于plot画图的原理

    首先是导入的: Import matplotlib.pyplot as plt 这份导入要背住,没事就是需要你进行导入的: 然后就是画图了,下面举一个例子: import numpy as np im ...

  4. Intellj(IDEA)中修改No artifacts configured问题

    如下图,配置Deployment的时候,出现No artifacts configured错误 解决的方法

  5. Centos升级Python 2.7并安装pip、ipython

    https://www.cnblogs.com/technologylife/p/6242115.html

  6. sqlserver收缩数据库

    缩数据库文件(如果不压缩,数据库的文件不会减小 企业管理器--右键你要压缩的数据库--所有任务--收缩数据库--收缩文件    --选择日志文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩 ...

  7. 黄聪:利用ImageMagicK给图片加水印

    1 图片水印处理 假设把名为logo.gif的水印图标添加在原始图片(src.jpg)右下角,且水印的下边缘距原始图片10像素.右边缘距原始图片5像素.使用如下命令即可: convert src.jp ...

  8. pytest.11.生成xml格式的测试报告

    From: http://www.testclass.net/pytest/report/ pytest有非常友好的命令行报告输出,在做用例开发的时候,这是极好的.然而我们在运行用例后经常会需要将测试 ...

  9. ALGO-115_蓝桥杯_算法训练_和为T(枚举)

    问题描述 从一个大小为n的整数集中选取一些元素,使得它们的和等于给定的值T.每个元素限选一次,不能一个都不选. 输入格式 第一行一个正整数n,表示整数集内元素的个数. 第二行n个整数,用空格隔开. 第 ...

  10. elasticsearch 口水篇(3)java客户端 - Jest

    elasticsearch有丰富的客户端,java客户端有Jest.其原文介绍如下: Jest is a Java HTTP Rest client for ElasticSearch.It is a ...