Я новичок в тестировании контрактов Spring Cloud. Я должен опубликовать sh заглушку для Jfrog artifactory со стороны производителя.
Следующий код Gradle:
publishing {
publications {
maven(MavenPublication) {
artifact("build/libs/provider-service-$version"+"-stubs.jar") {
extension 'jar'
}}}
repositories {
maven {
name 'libs-snapshot'
url "http://localhost:8081/artifactory/libs-snapshot/"
credentials {
username project.repoUser
password project.repoPassword
}
}
}
}
Но со стороны потребителя я не могу прочитать банку. Я получаю следующую ошибку при чтении баночки.
Код:
@AutoConfigureStubRunner(ids = "com.test:provider-service:+:stubs:8082",
consumerName = "contracts",
properties = {"stubrunner.username=admin", "stubrunner.password=Cirrus123$"},
stubsPerConsumer = true,
stubsMode = StubRunnerProperties.StubsMode.REMOTE,
repositoryRoot = "http://localhost:8081/artifactory/libs-snapshot/")
Ошибка:
java .lang .IllegalArgumentException: для groupId [com.test] artifactId [provider-service] и classifier [stubs] версия не была определена! Произошли следующие исключения [org.eclipse.aether.transfer.MetadataNotFoundException: не удалось найти метаданные com.test: provider-service / maven-metadata. xml в локальном (C: \ Users \ test \ AppData \ Local \ Temp \ aether-local7525112400154924089), org.eclipse.aether.transfer.MetadataTransferException: не удалось передать метаданные com.test: provider-service / maven-metadata. xml с / на удаленный0 (http://localhost: 8081 / artifactory / libs-snapshot / ): код состояния: 401, фраза причины: Unauthorized (401)]
Но я использую правильные учетные данные для подключения к Jfrog