Контракт Spring Cloud Невозможно найти / загрузить артефакт из Nexus, режим заглушки УДАЛЕНО - PullRequest
0 голосов
/ 04 января 2019

С точки зрения потребителя, я пытаюсь указать хранилище Nexus с режимом заглушки как УДАЛЕННОЕ, но я получаю ошибку. Не удалось найти артефакт или исключение при загрузке заглушки.

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

@AutoConfigureStubRunner(ids = "com.common.service:Common-Service-STUB:1.0.0-SNAPSHOT", stubsMode = StubRunnerProperties.StubsMode.REMOTE, repositoryRoot = "https://nexus.prod.cloud.XXX.com:8443/nexus/content/repositories/XXX-snapshot", stubsPerConsumer = true)

Структура хранилища

com
 - common
 - - service
 - - - Common-Service
 - - - Common-Service-STUB
 - - - - 1.0.0-Timestamp
 - - - - - Common-Service-STUB-1.0.0-Timestamp.jar
 - - - - 1.0.0-SNAPSHOT
 - - - - - maven-metadata.xml (this has the most recent Timestamp)

стек исключений

Caused by: java.lang.IllegalStateException: Exception occurred while trying to download a stub for group [com.common.service] module [Common-Service-STUB] and classifier [stubs] in [remote0 (Valid Nexus-Repo-snapshot)]
    at org.springframework.cloud.contract.stubrunner.AetherStubDownloader.unpackedJar(AetherStubDownloader.java:184)
    at org.springframework.cloud.contract.stubrunner.AetherStubDownloader.downloadAndUnpackStubJar(AetherStubDownloader.java:222)
    at org.springframework.cloud.contract.stubrunner.CompositeStubDownloader.downloadAndUnpackStubJar(CompositeStubDownloaderBuilder.java:77)
    at org.springframework.cloud.contract.stubrunner.StubRunnerFactory.createStubsFromServiceConfiguration(StubRunnerFactory.java:60)
    at org.springframework.cloud.contract.stubrunner.BatchStubRunnerFactory.buildBatchStubRunner(BatchStubRunnerFactory.java:59)
    at org.springframework.cloud.contract.stubrunner.spring.StubRunnerConfiguration.batchStubRunner(StubRunnerConfiguration.java:78)
    at org.springframework.cloud.contract.stubrunner.spring.StubRunnerConfiguration$$EnhancerBySpringCGLIB$$c9316bb9.CGLIB$batchStubRunner$0(<generated>)
    at org.springframework.cloud.contract.stubrunner.spring.StubRunnerConfiguration$$EnhancerBySpringCGLIB$$c9316bb9$$FastClassBySpringCGLIB$$b60005.invoke(<generated>)
    at org.springframework.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:228)
    at org.springframework.context.annotation.ConfigurationClassEnhancer$BeanMethodInterceptor.intercept(ConfigurationClassEnhancer.java:361)
    at org.springframework.cloud.contract.stubrunner.spring.StubRunnerConfiguration$$EnhancerBySpringCGLIB$$c9316bb9.batchStubRunner(<generated>)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:154)
    ... 67 more
Caused by: org.eclipse.aether.resolution.ArtifactResolutionException: Could not find artifact com.common.service:Common-Service-STUB:jar:stubs:1.0.0-SNAPSHOT in remote0 (Valid Nexus-Repo-snapshot)
    at shaded.org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolve(DefaultArtifactResolver.java:444)
    at shaded.org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolveArtifacts(DefaultArtifactResolver.java:246)
    at shaded.org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolveArtifact(DefaultArtifactResolver.java:223)
    at shaded.org.eclipse.aether.internal.impl.DefaultRepositorySystem.resolveArtifact(DefaultRepositorySystem.java:294)
    at org.springframework.cloud.contract.stubrunner.AetherStubDownloader.unpackedJar(AetherStubDownloader.java:168)
    ... 82 more
Caused by: org.eclipse.aether.transfer.ArtifactNotFoundException: Could not find artifact com.common.service:Common-Service-STUB:jar:stubs:1.0.0-SNAPSHOT in remote0 (Valid Nexus-Repo-snapshot)
    at shaded.org.eclipse.aether.connector.basic.ArtifactTransportListener.transferFailed(ArtifactTransportListener.java:39)
    at shaded.org.eclipse.aether.connector.basic.BasicRepositoryConnector$TaskRunner.run(BasicRepositoryConnector.java:355)
    at org.eclipse.aether.util.concurrency.RunnableErrorForwarder$1.run(RunnableErrorForwarder.java:67)
    at shaded.org.eclipse.aether.connector.basic.BasicRepositoryConnector$DirectExecutor.execute(BasicRepositoryConnector.java:581)
    at shaded.org.eclipse.aether.connector.basic.BasicRepositoryConnector.get(BasicRepositoryConnector.java:249)
    at shaded.org.eclipse.aether.internal.impl.DefaultArtifactResolver.performDownloads(DefaultArtifactResolver.java:520)
    at shaded.org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolve(DefaultArtifactResolver.java:421)
    ... 86 more

1 Ответ

0 голосов
/ 06 января 2019

Давайте посмотрим, что вы написали в аннотации. com.common.service:Common-Service-STUB:1.0.0-SNAPSHOT. Это означает, что идентификатор вашей группы com.common.service, идентификатор артефакта common-service-stub, ваша версия 1.0.0-SNAPSHOT. Кроме того, по умолчанию используется классификатор stub. Итак, вы ищете артефакт под названием Common-Service-STUB с классификатором stub. Другими словами Common-Service-STUB-stub.jar ищется. Измените com.common.service:Common-Service-STUB:1.0.0-SNAPSHOT на com.common.service:Common-Service:1.0.0-SNAPSHOT.

...