Gradle maven-publish不构建独立的spring-boot应用程序

时间:2014-10-06 08:15:05

标签: maven gradle spring-boot

当我使用gradle build构建一个spring-boot应用程序(到一个独立的jar)时,会生成正确的工件。生成的jar包含所有依赖的jar并且是可执行的。

我还按如下方式配置了maven-publish插件:

publishing {
   publications {
      mavenJava(MavenPublication) {
         from components.java
      }
   }
}

现在当我执行gradle publish时,一个没有依赖关系的小得多的jar会被构建并发布。

在后一种情况下不执行以下步骤。

:myProject:bootRepackage                                                                        
:myProject:assemble

如何确保在发布时执行正确的构建步骤?

1 个答案:

答案 0 :(得分:21)

我有点惊讶的是,从components.java发布并不会触发Java插件的assemble任务。 Spring Boot的bootRepackage任务被设置为assemble任务的依赖项,因此您需要让publish运行assemble。尝试将以下内容添加到build.gradle

publish {
    dependsOn assemble
}