Gradle发布:无效的发布' maven ':构件文件不存在。

3

我有一个使用gradle(5.2)和java的项目,我正在尝试将其发布到myMavenRepo

我的 build.gradle 文件如下:

plugins {   
    id 'maven-publish'
    id 'java'
    id 'org.springframework.boot' version '2.2.5.RELEASE'
    id 'io.spring.dependency-management' version '1.0.9.RELEASE'
}


group = 'com.doe'
version = '1.0.0'

sourceCompatibility = 10
targetCompatibility = 10


repositories {        
     mavenCentral()
     maven { url  MY_MAVEN_REPO_READ_URL }
}

dependencies { ... }


task sourceJar(type: Jar) {
    from sourceSets.main.allJava
}

publishing {
    repositories {
        maven {
            url MY_MAVEN_REPO_WRITE_URL
        }
    }

    publications {
        maven(MavenPublication) {
            from components.java

            artifact sourceJar {
                classifier "sources"
            }
        }
    }
}

但我总是收到以下错误:

无效的发布物“maven”:工件文件不存在:'/build/libs/project-1.0.0.jar'

.jar 文件总是以这个名字创建:project-1.0.0-sources.jar

所以我尝试从名称中删除“sources”,并将分类器更改为空:

 artifact sourceJar {
                classifier ""
 }

但是我收到了以下错误:

无效发布“maven”:存在多个具有相同扩展名和分类器(“jar”,“null”)的构件。

可以有人帮忙吗?

1个回答

3

Spring Boot插件会将项目的默认jar替换为可执行的jar,但不会将其注册到components.java中。

请查看Spring Boot插件文档以了解如何发布可执行的jar。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接