Gradle publi sh Недопустимая публикация 'maven': файл артефакта не существует - PullRequest
0 голосов
/ 26 апреля 2020

У меня есть проект java с gradle (5.2), и я пытаюсь опубликовать sh 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

Поэтому я попытался удалить эти «источники» из классификатора, изменив имя на пустое:

 artifact sourceJar {
                classifier ""
 }

Но я получил эту ошибку:

Недопустимая публикация 'maven': несколько артефактов с одинаковым расширением и классификатором ('jar', 'null').

Может ли кто-нибудь мне помочь?

1 Ответ

0 голосов
/ 28 апреля 2020

Плагин Spring Boot заменяет jar-файл проекта по умолчанию исполняемым jar, который не зарегистрирован в components.java.

Ознакомьтесь с документацией Spring Boot on как опубликовать sh исполняемый файл.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...