Vavr最新文档宣传Property checking功能,但相关API不存在,求答疑及文档时效性确认
关于Vavr Property Checking特性找不到的问题解答
你遇到的这个情况其实挺常见的,主要是两个核心原因:功能不在核心模块和版本/依赖不匹配,具体拆解如下:
Property检查属于独立的测试模块
Vavr把Property-based Testing的相关功能拆分到了单独的vavr-test模块里,而非默认的vavr-core核心包。如果你只引入了vavr-core依赖,自然找不到Arbitrary生成器和Property类型。
你需要单独添加这个测试模块的依赖,比如:
Maven配置:<dependency> <groupId>io.vavr</groupId> <artifactId>vavr-test</artifactId> <version>你的Vavr版本号</version> <scope>test</scope> </dependency>Gradle配置:
testImplementation 'io.vavr:vavr-test:你的Vavr版本号'版本不匹配导致的文档-代码差异
Property检查功能是在Vavr 0.10.0版本左右才正式加入vavr-test模块的。如果你的依赖版本低于这个版本,哪怕文档是最新的,代码里也不会有这些类。
另外要注意:官网默认展示的是最新版文档,但如果你项目里用的是旧版Vavr,就会出现“文档有但代码找不到”的错位情况,建议确认文档版本和依赖版本完全对应。包路径容易搞错
这些测试类的包名是io.vavr.test,而非核心的io.vavr包,所以导入时要写对路径:import io.vavr.test.Arbitrary; import io.vavr.test.Property;
如果还是找不到,可以检查IDE的依赖列表,确认vavr-test是否真的被正确拉取到本地项目中。
内容的提问来源于stack exchange,提问作者Simeon Leyzerzon
相关产品推荐
相关产品推荐

