转载

springboot建立其它项目的依赖包并发布到仓库(.net的nuget)

springboot建立其它项目的依赖包并发布到仓库

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

打开build.gradle文件,添加以下内容即可

task stubsJar(type: Jar) {
    classifier = "stubs"
    into('/') {
        include('**/lind/core/**') //这个包下面的所有文件都要被其它包依赖
        from("${project.rootDir}/src/main/java/")
    }
}

artifacts {
    archives stubsJar
}

然后在进行 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")

}

感谢各位的阅读!

原文  http://www.cnblogs.com/lori/p/9371484.html
正文到此结束
Loading...