我尝试使用gradle + artifactory插件+ maven-publish插件将jar + pom文件部署到artifactory。
我尝试过其他来源的多个解决方案,例如this,我认为spring-boot插件正在破解(因为它编辑了jar文件)
以下脚本成功上载了.pom文件,但没有成功上传spring-boot生成的.jar文件。我如何才能上传它?
这是我的build.gradle:
artifactory {
contextUrl = 'url'
publish {
repository {
repoKey = 'libs-release-local'
username = 'user'
password = 'password'
}
defaults {
publications("mavenJava")
}
}
}
和artifactory.gradle
gradlew clean build artifactoryPublish
[buildinfo] Not using buildInfo properties file for this build.
:clean
:compileJava
:processResources
:classes
:findMainClass
:jar
:bootRepackage
:assemble
:compileTestJava
:processTestResources UP-TO-DATE
:testClasses
:test
:check
:build
:generatePomFileForMavenJavaPublication
:artifactoryPublish
Deploying artifact: http://url/libs-release-local/BatchParser/1.0/BatchParser-1.0.pom
Deploying build descriptor to: http://url/api/build
Build successfully deployed. Browse it in Artifactory under http://url/webapp/builds/BatchParser/1471949957594
输出:
[pr-gis-db]
host=pr-gis-db
user=peregrinius
dbname=gis
port=5432
答案 0 :(得分:4)
publishing
阻止了一个非常微妙的错误。缺少from
导致Gradle无法在发布中包含jar文件。您需要更新publishing
块,使其如下所示:
publications {
mavenJava(MavenPublication) {
from components.java
}
}
如果我是你,我会为此打开一个Gradle可用性错误。默默地做任何事都不是用户友好的。