我的项目有些错误。我是Android初学者。 当我尝试编译我的应用程序时,我收到以下错误
错误:任务':app:transformClassesWithDexForDebug'的执行失败。 com.android.build.api.transform.TransformException:com.android.ide.common.process.ProcessException:org.gradle.process.internal.ExecException:进程'命令'C:\ Program Files \ Java \ jdk1.8.0_25 \ bin \ java.exe''以非零退出值2结束
我正在使用Parse SDK登录Facebook,但是在这一刻,我的应用程序中只有这个代码:
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// [Optional] Power your app with Local Datastore. For more info, go to
// https://parse.com/docs/android/guide#local-datastore
Parse.enableLocalDatastore(this);
Parse.initialize(this);
我的build.gradle是:
apply plugin: 'com.android.application'
android {
compileSdkVersion 23
buildToolsVersion "23.0.2"
defaultConfig {
applicationId "com.example.daniele.myapplication"
minSdkVersion 15
targetSdkVersion 23
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:23.1.1'
compile 'com.parse.bolts:bolts-android:1.+'
compile 'com.parse:parse-android:1.+'
}
我该如何解决? 第一个答案对我不起作用:java.exe finished with non-zero exit value 2 when using Facebook SDK 非常感谢。
编辑: 我现在已经解决了。 我从dependecies中删除了'com.parse:parse-android:1。+'并且它有效。 我不知道为什么,但在解析教程中,它建议添加所有这些依赖项
答案 0 :(得分:7)
defaultConfig {
applicationId "com.minls.cmn"
minSdkVersion 11
targetSdkVersion 23
versionCode 1
versionName "1.0"
multiDexEnabled true
}
**dexOptions {
javaMaxHeapSize "4g"**
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_7
targetCompatibility JavaVersion.VERSION_1_7
}
只是这一行 dexOptions { javaMaxHeapSize" 4g" }
答案 1 :(得分:-1)
您似乎正在使用 Oracle的JDK版本8 ,它基于 Java 8 ,而不是Android支持正式。更多详情:https://stackoverflow.com/a/23318269/3535408。
存在一些调整,但我不推荐它们。坚持 Java 7和JDK 7 ,你很高兴。
要更改JDK用法: 转到文件>项目结构> SDK位置>并更改JDK 7的JDK。您可以在此处下载最新版本的JDK 7:http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html
我尝试在另一个IDE(NetBeans)中添加使用JDK 8编译的Java库。我没有在这个库中使用任何Java 8功能,例如lambdas,但这足以让Gradle抱怨。 回到NetBeans,我更改了设置,以便用JDK 7编译,我的问题就解决了!
希望它有所帮助!