在创建PDF错误 [英] error while creating PDF
问题描述
我想生成使用Android Studio中的PDF文件。我现在用的的iText
库,但是当我将其添加到Android的工作室,我得到以下错误:
错误:执行失败的任务:应用程序:dexDebug。
com.android.ide.common.process.ProcessException:org.gradle.process.internal.ExecException:过程'命令'C:\\ Program Files文件\\的Java \\ jdk1.7.0_79 \\斌\\ java.exe的''与非完零退出值2
块引用>当我删除库,我的项目成功编译。它的工作原理是使用Eclipse,而不是Android的Studio时的预期。
修改
下面是我的build.gradle文件
应用插件:'com.android.application安卓{
compileSdkVersion 22
buildToolsVersion22.0.1 defaultConfig {
的applicationIDcom.abc
9的minSdkVersion
targetSdkVersion 22
版本code 1
的versionName1.0
}
buildTypes {
发布 {
minifyEnabled假
proguardFiles getDefaultProguardFile('proguard的-android.txt'),'proguard-rules.pro
}
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_7
targetCompatibility JavaVersion.VERSION_1_7
}
}依赖{ 编制项目(':轮)
编制项目(:Facebook的)
编译文件(库/薄荷4.0.8.jar')
编译com.android.support:support-v4:22.1.0
编译com.google.android.gms:播放服务:7.0.0
编译com.android.support:appcompat-v7:22.1.0
编译com.google code.gson:GSON:2.3.1
编译com.android.support:recyclerview-v7:22.1.0
编译com.squareup.picasso:毕加索:2.5.2
编译文件(库/ itextpdf-5.5.6.jar')
}和错误列表,而不是发布行
意外顶级例外:
com.android.dex.DexIndexOverflowException:不能合并新的索引66843到非巨型指导!
在com.android.dx.merge.InstructionTransformer.jumboCheck(InstructionTransformer.java:109)
在com.android.dx.merge.InstructionTransformer.access $ 800(InstructionTransformer.java:26)
在com.android.dx.merge.InstructionTransformer $ StringVisitor.visit(InstructionTransformer.java:72)
。在com.android.dx.io codeReader.callVisit(codeReader.java:114)
。在com.android.dx.io codeReader.visitAll(codeReader.java:89)
在com.android.dx.merge.InstructionTransformer.transform(InstructionTransformer.java:49)
在com.android.dx.merge.DexMerger.transform code(DexMerger.java:842)
在com.android.dx.merge.DexMerger.transformMethods(DexMerger.java:813)
在com.android.dx.merge.DexMerger.transformClassData(DexMerger.java:785)
在com.android.dx.merge.DexMerger.transformClassDef(DexMerger.java:682)
在com.android.dx.merge.DexMerger.mergeClassDefs(DexMerger.java:542)
在com.android.dx.merge.DexMerger.mergeDexes(DexMerger.java:171)
在com.android.dx.merge.DexMerger.merge(DexMerger.java:189)
在com.android.dx.command.dexer.Main.mergeLibraryDexBuffers(Main.java:454)
在com.android.dx.command.dexer.Main.runMonoDex(Main.java:303)
在com.android.dx.command.dexer.Main.run(Main.java:246)
在com.android.dx.command.dexer.Main.main(Main.java:215)
在com.android.dx.command.Main.main(Main.java:106)
错误:执行失败的任务:应用程序:dexDebug。
> com.android.ide.common.process.ProcessException:org.gradle.process.internal.ExecException:过程'命令'C:\\ Program Files文件\\的Java \\ jdk1.7.0_79 \\斌\\ java.exe的''与非完零退出值2
解决方案昨天我遇到了类似的问题。只需添加到您的build.gradle文件和清洁/无效项目=)
安卓{ .... dexOptions { jumboMode =真
}
}I am trying to generate a PDF using Android Studio. I am using the
iText
library, but when I add it into Android studio, I get the following error:Error:Execution failed for task ':app:dexDebug'. com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command 'C:\Program Files\Java\jdk1.7.0_79\bin\java.exe'' finished with non-zero exit value 2
When I remove the library, my project successfully compiles. It works as expected when using Eclipse instead of Android Studio.
EDIT
Here is my build.gradle file
apply plugin: 'com.android.application' android { compileSdkVersion 22 buildToolsVersion "22.0.1" defaultConfig { applicationId "com.abc" minSdkVersion 9 targetSdkVersion 22 versionCode 1 versionName "1.0" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } compileOptions { sourceCompatibility JavaVersion.VERSION_1_7 targetCompatibility JavaVersion.VERSION_1_7 } } dependencies { compile project(':Wheel') compile project(':facebook') compile files('libs/mint-4.0.8.jar') compile 'com.android.support:support-v4:22.1.0' compile 'com.google.android.gms:play-services:7.0.0' compile 'com.android.support:appcompat-v7:22.1.0' compile 'com.google.code.gson:gson:2.3.1' compile 'com.android.support:recyclerview-v7:22.1.0' compile 'com.squareup.picasso:picasso:2.5.2' compile files('libs/itextpdf-5.5.6.jar') }
And error list instead of line posted
UNEXPECTED TOP-LEVEL EXCEPTION: com.android.dex.DexIndexOverflowException: Cannot merge new index 66843 into a non-jumbo instruction! at com.android.dx.merge.InstructionTransformer.jumboCheck(InstructionTransformer.java:109) at com.android.dx.merge.InstructionTransformer.access$800(InstructionTransformer.java:26) at com.android.dx.merge.InstructionTransformer$StringVisitor.visit(InstructionTransformer.java:72) at com.android.dx.io.CodeReader.callVisit(CodeReader.java:114) at com.android.dx.io.CodeReader.visitAll(CodeReader.java:89) at com.android.dx.merge.InstructionTransformer.transform(InstructionTransformer.java:49) at com.android.dx.merge.DexMerger.transformCode(DexMerger.java:842) at com.android.dx.merge.DexMerger.transformMethods(DexMerger.java:813) at com.android.dx.merge.DexMerger.transformClassData(DexMerger.java:785) at com.android.dx.merge.DexMerger.transformClassDef(DexMerger.java:682) at com.android.dx.merge.DexMerger.mergeClassDefs(DexMerger.java:542) at com.android.dx.merge.DexMerger.mergeDexes(DexMerger.java:171) at com.android.dx.merge.DexMerger.merge(DexMerger.java:189) at com.android.dx.command.dexer.Main.mergeLibraryDexBuffers(Main.java:454) at com.android.dx.command.dexer.Main.runMonoDex(Main.java:303) at com.android.dx.command.dexer.Main.run(Main.java:246) at com.android.dx.command.dexer.Main.main(Main.java:215) at com.android.dx.command.Main.main(Main.java:106) Error:Execution failed for task ':app:dexDebug'. > com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command 'C:\Program Files\Java\jdk1.7.0_79\bin\java.exe'' finished with non-zero exit value 2
解决方案I faced a similar problem yesterday. Just add this to your build.gradle file and clean/invalidate your project =)
android { .... dexOptions { jumboMode = true } }
这篇关于在创建PDF错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!