将Gradle项目导入Android项目

将Gradle项目导入Android项目

问题描述:

我正在处理一个Android项目,我想导入另一个使用Gradle开发的现有项目。所以,我已经成功地在Eclipse中集成了这个gradle项目。我已经导入了项目的gradle,我可以看到从gradle这个项目实例化类,但是当我推出的Android项目它由控制台抛出下一个日志:将Gradle项目导入Android项目

[2014-10-06 09:10:42 - Pdf2jpg-V3] Dx 
UNEXPECTED TOP-LEVEL EXCEPTION: 
com.android.dx.cf.iface.ParseException: bad class file magic (cafebabe) or version (0034.0000) 
at com.android.dx.cf.direct.DirectClassFile.parse0(DirectClassFile.java:472) 
at com.android.dx.cf.direct.DirectClassFile.parse(DirectClassFile.java:406) 
at com.android.dx.cf.direct.DirectClassFile.parseToInterfacesIfNecessary(DirectClassFile.java:388) 
at com.android.dx.cf.direct.DirectClassFile.getMagic(DirectClassFile.java:251) 
at com.android.dx.command.dexer.Main.processClass(Main.java:665) 
at com.android.dx.command.dexer.Main.processFileBytes(Main.java:634) 
at com.android.dx.command.dexer.Main.access$600(Main.java:78) 
at com.android.dx.command.dexer.Main$1.processFileBytes(Main.java:572) 
at com.android.dx.cf.direct.ClassPathOpener.processArchive(ClassPathOpener.java:284) 
at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:166) 
at com.android.dx.cf.direct.ClassPathOpener.process(ClassPathOpener.java:144) 
at com.android.dx.command.dexer.Main.processOne(Main.java:596) 
at com.android.dx.command.dexer.Main.processAllFiles(Main.java:498) 
at com.android.dx.command.dexer.Main.runMonoDex(Main.java:264) 
at com.android.dx.command.dexer.Main.run(Main.java:230) 
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) 
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) 
at java.lang.reflect.Method.invoke(Unknown Source) 
at com.android.ide.eclipse.adt.internal.build.DexWrapper.run(DexWrapper.java:188) 
at com.android.ide.eclipse.adt.internal.build.BuildHelper.executeDx(BuildHelper.java:786) 
at com.android.ide.eclipse.adt.internal.build.builders.PostCompilerBuilder.build(PostCompilerBuilder.java:597) 
at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:734) 
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) 
at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:206) 
at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:328) 
at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:403) 
at org.eclipse.core.internal.resources.Project$1.run(Project.java:618) 
at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2313) 
at org.eclipse.core.internal.resources.Project.internalBuild(Project.java:597) 
at org.eclipse.core.internal.resources.Project.build(Project.java:124) 
at com.android.ide.eclipse.adt.internal.project.ProjectHelper.doFullIncrementalDebugBuild(ProjectHelper.java:1143) 
at com.android.ide.eclipse.adt.internal.launch.LaunchConfigDelegate.launch(LaunchConfigDelegate.java:155) 
at org.eclipse.debug.internal.core.LaunchConfiguration.launch(LaunchConfiguration.java:883) 
at org.eclipse.debug.internal.core.LaunchConfiguration.launch(LaunchConfiguration.java:739) 
at org.eclipse.debug.internal.ui.DebugUIPlugin.buildAndLaunch(DebugUIPlugin.java:1039) 
at org.eclipse.debug.internal.ui.DebugUIPlugin$8.run(DebugUIPlugin.java:1256) 
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54) 
...while parsing simple/escp/Template.class 

    [2014-10-06 09:10:43 - Pdf2jpg-V3] Dx 1 error; aborting 
    [2014-10-06 09:10:43 - Pdf2jpg-V3] Conversion to Dalvik format failed with error 1 

要导入gradle这个项目我android项目我尝试了两种方式: 1-从gradle项目导出JAR并导入为外部jar并使用构建路径进行检查 2-将整个gradle项目添加到android项目的构建路径中。

两者都引发相同的异常。

最后问题是Gradle项目(1.8)中的合规性级别,所以我将项目更新到1.6(与我的android项目一样),并更新了仅在1.8版本中工作的实例,现在工作在1.6版本。

我现在的问题是,它似乎是包含在gradle这个项目的jar引用不工作,但实际上theay包含有gradle这个引用如下:

Gradle dependencies

因此,执行罚球类未发现异常:

java.lang.NoClassDefFoundError: javax.json.JsonObject 

...虽然javax.json包括,任何想法?