Gradle使用shadow插件构建jar

Gradle 同时被 2 个专栏收录
3 篇文章 0 订阅
22 篇文章 0 订阅

一、构建内部jar
budild.gradle文件

  1. plugins {
  2. //gradle的插件,shadow这个插件可以构建的时候把引用的jar包合进去
  3.     id 'java'
  4. //加上此插件后会生成一个shadowJar的task
  5.     id "com.github.johnrengelman.shadow" version "5.0.0"
  6. }
  7. version '1.0-SNAPSHOT'
  8. sourceCompatibility = 1.8
  9. //构建的jar包的名字
  10. archivesBaseName = 'jar-name'
  11. //构建的jar包的版本,会追加到archivesBaseName的后面
  12. version=1.0
  13. //引用maven库
  14. repositories {
  15.     mavenCentral()
  16. }
  17. //引用的jar包,在maven库有gradle的引用
  18. dependencies {
  19.     testCompile group: 'junit', name: 'junit', version: '4.12'
  20.     compile 'com.zaxxer:HikariCP:3.3.1'
  21.     compile 'mysql:mysql-connector-java:5.1.45'
  22.     compile 'org.apache.logging.log4j:log4j-api:2.11.1'
  23.     compile 'org.apache.logging.log4j:log4j-core:2.11.1'
  24.     compile "org.apache.logging.log4j:log4j-slf4j-impl:2.11.1"
  25. }
  26. //名为shadowJar的task
  27. shadowJar {
  28.     manifest {
  29.         //指定入口函数,其他的是默认
  30.         attributes(
  31.                 'Main-Class': 'xx.xx.xx.xx.main'
  32.         )
  33.     }
  34. }

之后执行shadowJar,在build文件下会生成jar包