当前位置:   article > 正文

gradle项目离线打包_gradle 打包命令

gradle 打包命令

因交付客户源代码,不能连接公司maven仓库,需要进行离线打包,需要进行一些调整,将过程记录下来,防止重复踩坑:

1、工程中创建lib目录(和build.gradle文件同级);
2、通过在线方式生成完整的jar包,解压jar包,将其中的BOOT-INF下的ib中的jar包全部拷贝到工程下的lib目录;
3、修改gradle打包文件,将仓库地址修改为本地lib目录,依赖全部改为依赖本地目录

由于build.gradle中依赖了基础的base.gradle文件,其中涉及到远程仓库及插件方面的地址,需要进行改造:

buildscript {
    repositories {
        maven{
            url  uri('file:./lib')
        }
    }
    dependencies {
        classpath fileTree(includes:['*.jar'], dir:'lib')
        /*classpath "org.springframework.boot:spring-boot-gradle-plugin:2.0.5.RELEASE"
        classpath "gradle.plugin.com.gorylenko.gradle-git-properties:gradle-git-properties:1.5.2"
        classpath "io.franzbecker:gradle-lombok:1.14"*/
    }
}

apply plugin: org.springframework.boot.gradle.plugin.SpringBootPlugin
apply plugin: com.gorylenko.GitPropertiesPlugin
apply plugin: io.franzbecker.gradle.lombok.LombokPlugin
apply plugin: 'java'
apply plugin: 'idea'
apply plugin:'groovy'
apply plugin: 'eclipse'
apply plugin: 'jacoco'
jacoco{
    toolVersion = "0.8.2"
}
repositories {
    maven{
        url  uri('file:lib')
    }
}
……
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31

build.gradle文件:

apply from: 'base.gradle'

group = 'com.xxxx.xxxx'
version = '1.0.0'

configurations.all {
    // check for updates every build
    resolutionStrategy.cacheChangingModulesFor 10, 'seconds'
}

dependencies {
   compile fileTree(dir: 'lib', include: '*.jar')
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

4、下载plugin插件对应的依赖包。这一步是主要踩坑的地方,本地lib依赖的方式不会主动去拉取依赖包,因此需要手动下载。
分别在如下两个网站去查找jar包依赖关系:
(1)https://search.maven.org
(2)https://mvnrepository.com
例如,对于org.springframework.boot.gradle.plugin.SpringBootPlugin,通过原来的classpath引用中的GAV进行搜索:
maven仓库搜索
在搜索结果中查看pom文件里面的dependency,将其中的依赖按相同的方式搜索,然后下载jar包,放到lib目录,直到不再提示找不到class的错误。

5、lombok特殊处理,此处也是一个踩坑之处,项目中程序编译时候使用的lombok和plugin中的版本不同且有一定对应关系。
(1)首先需要下载和plugin对应的lombok对应版本,可以去第4步里面的两个网站去查询下载;
(2)然后需要将jar安装GAV的目录结果保存,如:org\projectlombok\lombok\1.16.20
在lib下创建对应目录,将jar文件和pom文件都拷贝到org\projectlombok\lombok\1.16.20目录

6、执行打包命令进行打包即可,例如:gradle build -x test

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/AllinToyou/article/detail/245658
推荐阅读
相关标签
  

闽ICP备14008679号