zoukankan      html  css  js  c++  java
  • 使用Gradle将Maven库打包成Jar

    项目需要将Dropwizard(Java RESTful服务)与Derby(轻量数据库)打包成Jar然后提供给其他工程使用,由于Dropwizard并未提供jar-release版本,所以写了个gradle构建脚本用于将maven库中的Dropwizard与Derby整合打包成一个jar包,然后再添加到目标项目中使用。

    脚本代码:

    apply plugin: 'java'
    
    project.ext {
        // 项目标题名称
        title = 'DropwizardDerby'
        // 项目名称前缀
        baseName = 'DropwizardDerby'
        // 项目版本信息
        version = '0.1.0'
        // dropwizard版本
        dropwizardVersion = '1.0.6'
        // derby版本
        derbyVersion = '10.13.1.1'
    }
    
    task release(type: Jar) {
        // 清单属性
        manifest {
            attributes 'Implementation-Title': project.ext.title, 'Implementation-Version': project.ext.version
        }
        // jar包名
        baseName = project.ext.baseName + project.ext.version
        // 打包依赖
        from {
            configurations.compile.collect {
                it.isDirectory() ? it : zipTree(it)
            }
        }
        with jar
    }
    
    // maven库
    repositories {
        mavenCentral()
    }
    
    // 依赖设置
    dependencies {
        compile(
                'io.dropwizard:dropwizard-core:'+project.ext.dropwizardVersion,
                'io.dropwizard:dropwizard-hibernate:'+project.ext.dropwizardVersion,
                'io.dropwizard:dropwizard-migrations:'+project.ext.dropwizardVersion,
                'io.dropwizard:dropwizard-auth:'+project.ext.dropwizardVersion,
                'org.apache.derby:derby:'+project.ext.derbyVersion
        )
    }

    使用方式:

    1、安装Gradle(我用的2.1.0版本)并加入环境变量

    2、将该脚本创建在任意目录中

    3、执行

    gradle clean
    gradle release

    4、然后如果运行正常的话,会在build/libs中找到生成的jar包

    5、然后在其他项目中依赖该jar即可,理论上本脚本也可以适用于其他maven中库的打包,再次仅提供一个思路,可以自行修改

    就是这些,感谢阅读,如果有更好的方法欢迎评论交流!

  • 相关阅读:
    流式布局
    发送短信验证码 倒计时
    jQuery-qrcode.js 生成带Logo 的二维码
    bootstrap-daterangepicker插件运用
    html 转 pdf
    input placeholder 在chrome 浏览器自动填充时,背景色覆盖原有背景图片问题。
    jQuery.qrcode 生成二维码,并使用 jszip、FileSaver 下载 zip 压缩包至本地。
    java学习之super、final、static关键字及匿名对象
    java学习之数组
    java学习之循环语句
  • 原文地址:https://www.cnblogs.com/halfmanhuang/p/6364455.html
Copyright © 2011-2022 走看看