java 快速构建main,gradle快速构建一个可执行的java项目

项目结构如下  项目根目录

++++src

----indi.yftao

++++Main.java

----xx.kt

----build.gradle

Step1:build.gradle配置如下:

apply plugin: 'java'

//设置Java源文件的位置,默认为src/main/java

sourceSets {

main.java.srcDirs += 'src'

test.java.srcDirs += 'test'

}

repositories {

mavenCentral()

}

dependencies {

compile group: 'com.alibaba', name: 'fastjson', version: '1.2.47'

compile 'com.google.guava:guava:16.0'

testCompile 'junit:junit:4.12'

}

jar {

//可执行jar包依赖配置:

doFirst {

from { configurations.runtime.collect { it.isDirectory() ? it : zipTree(it)}}

}

manifest {

//程序入口类,包含静态main函数的类(全限定名:包名+类名)

attributes 'Main-Class': 'indi.yftao.Main'

}

}

Step2:在src目录的包路径下编写入口类(带静态main函数,注意buil.gradle中的Main-Class设置),然后在项目根目录下执行构建命令:  gradle clean build

得到的jar包在build/libs下面

Step3:直接执行:  java -jar build/libs/.jar

支持kotlin的build.gradle文件内容

buildscript {

ext.kotlin_version = '1.2.10'

repositories {

mavenCentral()

}

dependencies {

//kotlin工具

classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"

}

}

apply plugin: 'kotlin'

//设置Java源文件的位置,默认为src/main/java

sourceSets {

main.java.srcDirs += 'src'

test.java.srcDirs += 'test'

}

repositories {

mavenCentral()

}

dependencies {

compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"

compile group: 'com.alibaba', name: 'fastjson', version: '1.2.47'

compile 'com.google.guava:guava:16.0'

testCompile 'junit:junit:4.12'

}

jar {

//可执行jar包依赖配置

doFirst {

from { configurations.runtime.collect { it.isDirectory() ? it : zipTree(it)}}

}

manifest {

//程序入口类(包含main函数),kotlin的main函数不知道为什么不行

attributes 'Main-Class': 'indi.yftao.Main'

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值