Вместо того, чтобы выбирать окурки или определения контрактов из Artifactory / Nexus или Git, можно просто указать на местоположение на диске или в classpath. Это может быть особенно полезно в многомодульном проекте, где один модуль хочет повторно использовать заглушки или контракты из другого модуля без необходимости фактически устанавливать их в локальном репозитории maven или зафиксировать эти изменения в Git.
В Для достижения этого достаточно использовать протокол stubs: //, когда параметр репозитория root установлен либо в Stub Runner, либо в плагине Spring Cloud Contract.
В этом примере проект производителя был успешно встроенные и заглушки были созданы в папке target / stubs. В качестве потребителя можно настроить программу-заглушку для выбора заглушек из этого местоположения, используя протокол заглушки: //.
@ AutoConfigureStubRunner (stubsMode = StubRunnerProperties.StubsMode.REMOTE, repository Root = "заглушки: / / file: // location / to / the / provider / target / stubs / ", ids =" com.example: some-seller ")
Контракты и квитанции могут храниться в местоположении, где каждый производитель имеет собственную папку для контрактов и сопоставлений заглушек. В этой папке каждый потребитель может иметь свою собственную настройку. Чтобы заставить Stub Runner находить выделенную папку из предоставленных идентификаторов, можно передать свойство stubs.find-provider = true или системное свойство stubrunner.stubs.find-provider = true.
@ AutoConfigureStubRunner (stubsMode = StubRunnerProperties .StubsMode.REMOTE, репозиторий Root = "stubs: // file: // location / to / каталог / reports /", ids = "com.example: some-seller", properties = "stubs.find -roduction = true ")