• springboot将项目源代码打包


    springboot将项目源代码打包并发布到仓库

    如果我们有一些类和方法是公用的,可以打开公用包,而这时使用默认的build方式都所有依赖都打进去,而且你当然项目的文件虽然在包里,但却在boot-inc里,这里的文件不能被其它包识别,只是一大堆class文件,然后下面的方法,我们会生成一个后缀stubs的文件,它只有你需要的几个对象,没有多余的依赖项。
    打开build.gradle文件,添加以下内容即可

    
    //打包源代码
    task stubsJar(type: Jar, dependsOn: classes) {
        println '打包源代码'
    
        classifier = "stubs"
        into('/') {
            from("${project.rootDir}/src/main/java/")
            include('lind/core/**') //包含
            exclude '**/CoreApplication.java' //排除
        }
    }
    
    artifacts {
        archives stubsJar
    }
    
    //直接调用install把它发到本地~/.m2/repository仓库里
    install {
        println "发布到本地仓库"
        dependsOn << stubsJar
        repositories.mavenInstaller {
            pom.version = "$project.version"
            pom.artifactId = "$artifactId"
            pom.groupId = "$project.group"
        }
    }
    
    repositories {
        mavenLocal()
        maven {
            name "aliyun1"
            url 'http://maven.aliyun.com/nexus/content/groups/public'
        }
        mavenCentral()
    }
    
    dependencies {
        compileClasspath('org.springframework.boot:spring-boot-starter-web') //不会被打包到jar里,这样包就不会那么大了
        testCompileClasspath('org.springframework.boot:spring-boot-starter-test')
    }
    
    

    然后在进行gradle build之后,会在build/libs目前生成两个jar文件,其中我们要打到仓库的是带有stubs后缀的。

    • 生成本地仓库
    mvn install:install-file -Dfile=/Users/lind.zhang/github/core/build/libs/core-0.6-stubs.jar -DgroupId=lind -DartifactId=core -Dversion=0.6 -Dpackaging=jar
    
    • 在其它项目里使用依赖的方法引用这个包
    dependencies {
        compile('org.springframework.boot:spring-boot-starter-web')
        testCompile('org.springframework.boot:spring-boot-starter-test')
        compile("lind:core:0.6")
    
    }
    

    感谢各位的阅读!

  • 相关阅读:
    SpringBoot集成JWT
    MongoDB学习入门
    Docker入门笔记
    商品分类(递归子目录)接口开发笔记
    深入理解java虚拟机
    -XX:+HeapDumpOnOutOfMemoryError
    使用kettle报Invalid byte 1 of 1-byte UTF-8 sequence异常
    kettle学习笔记(四)——kettle输入步骤
    eclipse maven项目,如何导出使用的依赖jar包
    kettle学习笔记(二)——kettle基本使用
  • 原文地址:https://www.cnblogs.com/lori/p/9371484.html
Copyright © 2020-2023  润新知