Я получил устаревший проект от bitbucket, подключенного к Jenkins на Docker контейнере. Сборка не удалась, потому что внешний jar-файл доступен только по ссылке.
Я попытался загрузить jar-файл через curl в файл Jenkins и создал для него собственный my-jar-pom. xml:
pipeline {
agent {docker {image: 'maven: 3.6.3'} }
tools {
jdk "jdk-1.8"
}
stages {
stage('myStage') {
steps {
step('Get Library') {
>&2 echo 'Get Library'
sh 'curl -O link-to-my-jar.jar'
}
step('Create POM') {
sh 'echo "<project xmlns=\"http://maven.apache.org/POM/4.0.0\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:schemaLocation=\"http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd\">\n
<groupId>my-group-id</groupId>\n
<artifactId>my-artifact-id</artifactId>\n
<version>1.0</version>\n
</project>" > my-jar.pom'
>&2 echo 'create POM'
}
step('Install POM') {
mvn install:install-file -Dfile=my-jar.jar -DpomFile=my-jar.pom
>&2 echo 'install POM'
}
step('Install') {
sh 'mvn -B clean install'
>&2 echo 'install mvn'
}
}
}
}
}
все, что происходит в файле Jenkins. Теперь сборка все еще не удается, и я даже не могу прочитать эхо, которое я помещаю между командами в консоли. Какое решение для этого? Загрузите файл вручную и поместите его как-нибудь на сам том jenkins_home? Я бы предпочел решить эту проблему в файле Jenkins.
Редактировать: Там ошибка с консоли Jenkins:
[ERROR] Failed to execute goal on project my-project: Could not
resolve dependencies for project my-project:jar:1.0.0: Failure to find my
jar in https://repository.jboss.org/nexus/content/repositories/thirdparty
releases was cached in the local repository, resolution will not be
reattempted until the update interval of thirdparty-releases has elapsed
or updates are forced