后台项目Gradle打包jar,不包含依赖jar并放到外部路径

复制代码
# 1.Gradle打包jar
# 2.依赖jar包外放到其他目录
# 3.保留引用关系
# 4.去掉引入的缓存



build.gradle
Groovy 复制代码
// 需要放到dependencies下面
// 傻逼问题 1 这个jar打包还得主动开
jar.enabled = true
// 1.清除上一次的lib目录
task clearJar(type: Delete) {
    delete "$buildDir\\libs\\lib"
}

// 2.将依赖包复制到lib目录
task copyJar(type: Copy, dependsOn: 'clearJar') {
    from configurations.compileClasspath
    into "$buildDir\\libs\\lib"
}

// 此时只可使用jar  build和bootjar都会打入多余的缓存.idea或者boot配置不够完美
jar {
    // 例外所有的jar和dao中.idea缓存
    excludes = ["*.jar","**/.idea/**"]

    // 需求1去掉jar内的依赖 放到另外的libs/lib
    dependsOn clearJar
    dependsOn copyJar
    // 需求2 放到lib/jars能够被指向调到 即修改MANIFEST.MF的Manifest 自动写入
    manifest {
        attributes ('Manifest-Version': 1.0)
        attributes ('Main-Class': "com.hp.equipment.UserApplication")
        attributes ('Class-Path': configurations.compileClasspath
                .files.collect { "lib/$it.name" }.join(' '))
    }
    // 需求3 xml要导入进入 核实自带就有,static网页核对完美都有

    // 备注文件名 version group 等在allprojects中配置
}
相关推荐
芝法酱1 个月前
芝法酱学习笔记(0.4)——SpringBoot多模块项目打包,resource分离,lib分离,启动脚本
linux·maven·shell脚本·springboot打包·资源分离
Davieyang.D.Y4 个月前
互联网应用主流框架整合之Spring Boot运维体系
运维·后端·actuator·springboot打包·springboot部署