Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/202.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/kotlin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 如何排除Kotlin中测试类的明确警告?_Android_Kotlin - Fatal编程技术网

Android 如何排除Kotlin中测试类的明确警告?

Android 如何排除Kotlin中测试类的明确警告?,android,kotlin,Android,Kotlin,我有一个Android库模块,在gradle中启用了explicitApi kotlin功能 android { kotlinOptions { freeCompilerArgs += '-Xexplicit-api=warning' } } 一切都很好,但问题是,包src/test和src/androidTest中的测试类也会报告警告 如何从显式api控件中排除测试类 谢谢据我所知,你不能!我本想在这周打开一个bug报告,但一直没有实现。同时,我建议您在构建脚

我有一个Android库模块,在gradle中启用了explicitApi kotlin功能

android {
    kotlinOptions {
        freeCompilerArgs += '-Xexplicit-api=warning'
    }
}
一切都很好,但问题是,包src/test和src/androidTest中的测试类也会报告警告

如何从显式api控件中排除测试类


谢谢

据我所知,你不能!我本想在这周打开一个bug报告,但一直没有实现。同时,我建议您在构建脚本中添加类似的内容,这至少可以为Kotlin编译器修复它(但您仍然会看到IDE警告):

如果您使用的是Gradle Kotlin DSL:

tasks.withType{
如果(“UnitTest”!在名称中){
kotlinOptions.freeCompilerArgs+=“-Xexplicit api=严格”
}
}
并且不要只在该块中设置android.kotlinOptions中的编译器参数,这样它就只应用于非测试源代码集

编辑:我刚刚检查了一下,IntelliJ中的警告错误已经修复,所以它应该在几个月到一年内在Android Studio中修复

tasks.withType(org.jetbrains.kotlin.gradle.tasks.KotlinCompile) {
    if (!it.name.contains("Test")) {
        kotlinOptions.freeCompilerArgs += "-Xexplicit-api=strict"
    }
}