我一直在使用Spring云合约来测试生产者端。现在,我想将str. jar文件上传到nexus,这样我的同事就可以编写一些针对我的生产者的联调。我发现Spring文档很难理解。
<!-- First disable the default jar setup in the properties section-->
<!-- we don't want the verifier to do a jar for us -->
<spring.cloud.contract.verifier.skip>true</spring.cloud.contract.verifier.skip>
<assembly
xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.3"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.3 http://maven.apache.org/xsd/assembly-1.1.3.xsd">
<id>stubs</id>
<formats>
<format>jar</format>
</formats>
<includeBaseDirectory>false</includeBaseDirectory>
<fileSets>
<fileSet>
<directory>src/main/java</directory>
<outputDirectory>/</outputDirectory>
<includes>
<include>**com/example/model/*.*</include>
</includes>
</fileSet>
<fileSet>
<directory>${project.build.directory}/classes</directory>
<outputDirectory>/</outputDirectory>
<includes>
<include>**com/example/model/*.*</include>
</includes>
</fileSet>
<fileSet>
<directory>${project.build.directory}/snippets/stubs</directory>
<outputDirectory>META-INF/${project.groupId}/${project.artifactId}/${project.version}/mappings</outputDirectory>
<includes>
<include>**/*</include>
</includes>
</fileSet>
<fileSet>
<directory>${basedir}/src/test/resources/contracts</directory>
<outputDirectory>META-INF/${project.groupId}/${project.artifactId}/${project.version}/contracts</outputDirectory>
<includes>
<include>**/*.groovy</include>
</includes>
</fileSet>
</fileSets>
我一直在使用Spring Cloud合约来测试生产者端。现在,我想将str. jar文件上传到nexus,这样我的同事就可以编写一些针对我的生产者的联调。
如果你使用DSL你什么都不需要做。只需执行。/mvnw部署
,我们将生成jar和存根jar。
我发现Spring文档很难理解。
这不是很具体,是吗?到底什么很难理解?
在我将“跳过”行添加到pom后,我发现存根json永远不会生成。
哪个跳过
行?如果添加
我使用的是Spring Cloud合同1.2.4,我认为目标中只有“存根”文件夹,而不是“片段/存根”。
你在使用Rest Docs吗?你从哪里得到这个片段的?从这里https://cloud.spring.io/spring-cloud-static/Edgware.SR3/single/spring-cloud.html#_publishing_stubs_as_jars?如果你阅读片段上的文本,你会看到对于Maven和Gradle,设置已经准备好了。但是,如果你愿意,你可以自定义它。
。如果你按照留档的一步一步部分,我们描述了整个最基本的流程。还有多个教程,包括这里非常全面的一个http://cloud-samples.spring.io/spring-cloud-contract-samples/workshops.html
Stub Runner运行它需要str. jar中的哪些文件?
我们在留档中描述了这一点。如果您想使用类路径映射,请阅读本节https://cloud.spring.io/spring-cloud-static/Edgware.SR3/single/spring-cloud.html#_classpath_scanning。否则,我们将解压缩并浏览我们可以解析的任何WireMock Json文件。
这里你有一个手动创建存根的工作示例jar-https://github.com/spring-cloud-samples/spring-cloud-contract-samples/tree/master/producer_with_restdocs。我认为你应该从头开始阅读留档并遵循教程。或者告诉我们留档到底有什么不清楚的地方让你感到困惑。