原 AS升級3.1 編譯報錯:The SourceSet 'instrumentTest' is not recognized by the Android Gradle Plugin.
阿新 • • 發佈:2018-12-31
AndroidStudio升級到3.1後編譯報錯:The SourceSet ‘instrumentTest’ is not recognized by the Android Gradle Plugin.
專案中 gradle 配置
sourceSets {
main {
manifest.srcFile 'AndroidManifest.xml'
java.srcDirs = ['src']
resources.srcDirs = ['src']
aidl.srcDirs = ['src']
renderscript.srcDirs = ['src' ]
res.srcDirs = ['res']
assets.srcDirs = ['assets']
jniLibs.srcDirs = ['libs']
}
// Move the tests to tests/java, tests/res, etc...
instrumentTest.setRoot('tests')
// Move the build types to build-types/<type>
// For instance, build-types/debug/java, build-types/debug/AndroidManifest.xml, ...
// This moves them out of them default location under src/<type>/... which would
// conflict with src/ being used by the main source set.
// Adding new build types or product flavors should be accompanied
// by a similar customization.
debug.setRoot('build-types/debug')
release.setRoot('build-types/release' )
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
原因
是這裡出問題了 instrumentTest.setRoot(‘tests’) ,你可能在升級 Android Studio 時更新了專案的 gradle 配置,這裡的配置中 instrumentTest 已被棄用,不適用於現在的 gradle 版本。
解決辦法
用 androidTest 替換 instrumentTest,編譯執行即可。