android studio升级至3.0之后,依赖方式发生了变化。相关的变化可参照博文3.0依赖方式转变。
还是回到本文话题。
implementation其实就是之前的compile。
在使用cucumber的时时候,发现@when,@and不被识别,但确认已经添加了dependency。
仔细检查发现,cucumber被用在了test目录下,而dependency的引用方式却为androidTestImplementation。
若改为testImplementation,便可识别。
cucumber是一款基于BDD的测试框架。不管在test目录,或是androidTest目录下,都可以被使用。因此,万全起见,引用方式可以直接使用implementation。
因此,三者的区别应在于所在目录位置的不同。