Gradle打包jar可执行程序

1. 使用springboot插件

apply plugin: 'java'
apply plugin: 'eclipse'
apply plugin: 'spring-boot'

buildscript {
    ext {
        springBootVersion = '1.2.5.RELEASE'
    }
    repositories {
        jcenter()
        mavenLocal()
        mavenCentral()
    }
    dependencies {
        classpath "org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}"
    }
}

sourceCompatibility = 1.8
version = '1.0'
jar {
    manifest {
        attributes 'Implementation-Title': 'Gradle Quickstart',
                   'Implementation-Version': version
    }
}

repositories {
    mavenCentral()
}

dependencies {
    compile project(':dubbo-hello-api')
    compile group: 'com.alibaba', name: 'dubbo', version: '2.5.5'
}

test {
    systemProperties 'property': 'value'
}

uploadArchives {
    repositories {
       flatDir {
           dirs 'repos'
       }
    }
}

 

2. 使用application

apply plugin: 'java'
apply plugin: 'eclipse'
apply plugin: 'application'


sourceCompatibility = 1.8
version = '1.0'
mainClassName = 'm.dubbo.demo.provider.DemoProvider'

repositories {
    mavenCentral()
}

dependencies {
    compile project(':dubbo-hello-api')
    compile group: 'com.alibaba', name: 'dubbo', version: '2.5.5'
}

jar {

    from configurations.compile.collect { zipTree it}//gradle build生成jar包含了依赖的jar包(被解压缩)
    manifest {
        attributes 'Manifest-Version': '1.0.0',
                   'Main-Class': mainClassName,
                   'Class-Path': configurations.compile.collect {  it.getName()   }.join(' ') //将依赖的包加到classpath,然后gradle installDist
    }
}


test {
    systemProperties 'property': 'value'
}

uploadArchives {
    repositories {
       flatDir {
           dirs 'repos'
       }
    }
}

 

posted on 2017-09-24 21:41  jmbkeyes  阅读(372)  评论(0编辑  收藏  举报

导航