在遇到这个要点之后:https://gist.github.com/chemouna/00b10369eb1d5b00401b,我注意到它正在使用Google Truth
库:https://google.github.io/truth/。所以我开始按照以下步骤在Android Studio的build.gradle
文件中添加库:
buildscript {
repositories.mavenLocal()
}
dependencies {
testImplementation "com.google.truth:truth:0.40"
}
但是当我想为我的断言java类添加Truth入口点的静态导入时:
import static com.google.common.truth.Truth.assertThat;
import static com.google.common.truth.Truth.assertWithMessage;
我收到了无法解析符号Truth
的错误。
我尝试重建我的项目并实现此处所述的解决方案:AndroidTestCompile dependencies not recognized in the imports,主要运行以下gradle任务:
但问题仍然存在。
对此有何帮助?
我应该在build.gradle文件中实际添加这些行吗? :
buildscript {
repositories.mavenLocal()
}
如果我已经拥有这些:
repositories {
mavenCentral()
jcenter()
google()
}
答案 0 :(得分:3)
要使用Java 8扩展,还要包括 com.google.truth.extensions:真java8延伸:0.40
注意强>
您应致电 androidTestImplementation
androidTestImplementation "com.google.truth:truth::0.40"
答案 1 :(得分:1)
将适当的依赖项添加到您的构建文件中:
testImplementation "com.google.truth:truth:1.0.1"
当且仅当您正在测试Java 8代码(Stream,Optional等)时,才需要Java 8扩展:
testImplementation "com.google.truth.extensions:truth-java8-extension:1.0.1"
答案 2 :(得分:1)
您需要将 mavenCentral 添加到您的存储库中
repositories {
mavenCentral()
}
dependencies {
testImplementation "com.google.truth:truth:1.1.2"
}
答案 3 :(得分:0)
不要忘记使用
<块引用>mavenCentral() 而不是 jcenter()
allprojects {
repositories {
google()
mavenCentral()
}
}