项目打包需要resources下的配置文件以及项目依赖的jar包均分离出所打的jar包,结合网上的资源,现整理如下:
task clearJar(type: Delete) {
delete "$buildDir\\libs\\lib"
}
task copyJar(type: Copy, dependsOn: 'clearJar') {
from configurations.runtimeClasspath
into "$buildDir\\libs\\lib"
}
// 拷贝配置文件
task copyResources(type: Copy) {
delete "$buildDir\\libs\\config"
from('src/main/resources')
into 'build/libs/resources'
}
jar {
//这里排除resources下的文件及文件夹
excludes = ["lib/**","*.properties","*.xml","*.yml","mybatis/**"]
dependsOn clearJar
dependsOn copyJar
dependsOn copyResources
//通过configurations.runtime拿到所有的运行时的依赖jar包,然后.each遍历他,通过it.name获取到每个的jar包的name,赋值
manifest {
attributes 'Main-Class': '*.Application'
attributes 'Class-Path': 'resources/ '+ configurations.runtimeClasspath.files.collect { "lib/$it.name" }.join(' ')
}
}
gradle 打jar包,资源包分离,依赖jar包分离
最新推荐文章于 2025-09-16 00:18:03 发布
本文介绍了如何使用Gradle脚本实现Java项目的打包,确保将resources配置文件和项目依赖的jar包独立打包,并详细展示了清理旧文件、复制资源和依赖jar的操作,以及manifest配置的技巧。
3261

被折叠的 条评论
为什么被折叠?



