最近想做个app,里面需要有一个二维码扫描的功能,然后谷歌之后发现Zxing这个用的人好多,就看看怎么用;
然后就在github上拉下他们的源码,导入eclipse,然后编译之后导出为jar文件【用的android studio做安卓的,不过不知道怎么导出……】
然后将导出好的jar文件导入android studio 的时候问题来了,每次编译后都在报错:
Error:Error converting bytecode to dex:
Cause: Dex cannot parse version 52 byte code.
This is caused by library dependencies that have been compiled using Java 8 or above.
If you are using the 'java' gradle plugin in a library submodule add
targetCompatibility = '1.7'
sourceCompatibility = '1.7'
to that submodule's build.gradle file.
好吧说明已经很清楚了,某个地方需要加两句话,可以不明白到底要在哪里加啊;于是经历了各种千辛万苦(百度,谷歌,QQ群……)耗时一天半,终于搞定了;
下面是解决办法
1.首先在github上拉取源码后,在eclipse里面打包的时候需要给要打包的文件目录下面加一个文件 build.gradle 然后里面的内容就是:
apply plugin: 'java' sourceCompatibility = 1.7 targetCompatibility = 1.7 dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) }
2.然后eclipse打包的时候请在build path那里指定jdk版本为1.7
3.将新打包好的jar包导入android studio中,然后jar包上右击,选择 as a library,debug运行成功!!!
最终文件的目录结构是这样的: build.gradle 中的内容就是第一步中的内容