应用程序的build.gradle是:
apply plugin: 'com.android.application'
android {
compileSdkVersion 22
buildToolsVersion "22.0.0"
defaultConfig {
applicationId "myapp.robolectricexample2"
minSdkVersion 14
targetSdkVersion 22
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
compile 'com.android.support:appcompat-v7:22.0.0'
compile 'org.robolectric:robolectric:3.0-rc2'
compile 'junit:junit:4.12'
}
所以,我收到以下错误:
错误:Gradle:任务':app:dexDebug'执行失败。 > com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException:进程'命令 ' C:\ Program Files \ Java \ jdk1.8.0_31 \ bin \ java.exe''完成了 非零退出值2
答案 0 :(得分:0)
build.gradle
android {
apply plugin: 'com.android.application'
android {
compileSdkVersion 22
buildToolsVersion "22.0.1" // <-- was 22.0.0
defaultConfig {
applicationId "myapp.robolectricexample2"
minSdkVersion 14
targetSdkVersion 22
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile 'com.android.support:appcompat-v7:22.1.1' // <-- was 22.0.0
testCompile 'junit:junit:4.12'
testCompile 'org.robolectric:robolectric:3.0-rc2'
}
现在您可以运行 gradlew testDebug
。
将测试置于 src/test
。
答案 1 :(得分:0)
我也有这个问题。就我而言,我发现原因是我将测试文件放在错误的目录中。
我的旧项目结构是:
app
|-src
| |- main
| |- androidTest <- I put here.
| |- test <- The test files should be put here.
|-build
我将测试文件移动到android默认单元测试目录src / test / java,然后问题解决了。