我如何打包jar,以便依赖的弹簧罐不会包含在我的最终jar中,而是将它们引用到maven存储库

时间:2016-07-06 20:08:26

标签: spring gradle spring-boot

尝试使用Gradle构建一个jar,它具有一些Spring依赖关系并放入nexus存储库。和我的build.gradle看起来如下

dependencies {

compile group: 'org.springframework', name: 'spring-jdbc', version: '3.1.0.RELEASE'



compile("org.springframework.cloud:spring-cloud-spring-service-connector:1.2.2.RELEASE")
compile("org.springframework.cloud:spring-cloud-cloudfoundry-connector:1.2.2.RELEASE")

  }

当我使用它捆绑我的罐子时,它只是在我的最后一个罐子中包含这些罐子。

jar {
baseName = 'npswo-framework'
version =  '0.1.0'
from {
    configurations.compile.collect { it.isDirectory() ? it : zipTree(it) }
}


 }

我正在寻找一些东西,我的最后一个罐子应该有一些参考这些罐子可能是通过META-INF并在有人下载我的罐子时下载它们。

目前,如果有人在nexus中下载或引用我的jar,它会在我的jar下包含spring jar文件夹,如果项目已经有弹簧参考,它们会被复制

1 个答案:

答案 0 :(得分:0)

Grader中的Maven发布插件解决了这个问题,我们可以按照任何在gradle中创建发布插件的示例