此版本仍在开发中,尚不被认为是稳定的。对于最新的稳定版本,请使用 spring-cloud-contract 4.3.0spring-doc.cadn.net.cn

如何使用传递依赖项?

Spring Cloud Contract 插件添加了为您创建存根 jar 的任务。一 出现的问题是,在重用存根时,您可能会错误地导入所有 该存根的依赖项。在构建 Maven 工件时,即使您有几个 不同的罐子,它们都共用一个pom.xml文件,如以下列表所示:spring-doc.cadn.net.cn

├── producer-0.0.1.BUILD-20160903.075506-1-stubs.jar
├── producer-0.0.1.BUILD-20160903.075506-1-stubs.jar.sha1
├── producer-0.0.1.BUILD-20160903.075655-2-stubs.jar
├── producer-0.0.1.BUILD-20160903.075655-2-stubs.jar.sha1
├── producer-0.0.1.BUILD-SNAPSHOT.jar
├── producer-0.0.1.BUILD-SNAPSHOT.pom
├── producer-0.0.1.BUILD-SNAPSHOT-stubs.jar
├── ...
└── ...

有三种可能使用这些依赖项,以免有任何依赖项 传递依赖关系的问题:spring-doc.cadn.net.cn

如何将所有应用程序依赖项标记为可选?

如果,在producerapplication,则将所有依赖项标记为可选, 当您将producer存根(或者当 依赖项由 Stub Runner 下载),那么,因为所有依赖项都是 可选,则不会下载它们。spring-doc.cadn.net.cn

如何创建单独的artifactid对于存根?

如果您创建单独的artifactid,您可以按照任何您想要的方式进行设置。 例如,您可能决定根本没有依赖项。spring-doc.cadn.net.cn

如何排除消费者端的依赖关系?

作为消费者,如果您将存根依赖项添加到类路径中,则可以显式排除不需要的依赖项。spring-doc.cadn.net.cn