将Eclipse项目转换成AndroidStudio项目过程中遇到的问题以及解决方法
Posted 梦尽落花
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了将Eclipse项目转换成AndroidStudio项目过程中遇到的问题以及解决方法相关的知识,希望对你有一定的参考价值。
将Eclipse项目转换成androidStudio项目也不是第一次了,昨天转的时候遇到几个问题:
首先将项目导入androidstudio,导完后报错:
问题一:
Error:java.util.concurrent.ExecutionException: com.android.ide.common.process.ProcessException:
Error:Execution failed for task \':app:mergeDebugResources\'.
> Error: java.util.concurrent.ExecutionException: com.android.ide.common.process.ProcessException:
问题原因:咋一看是concurrent并发包报的异常,肯定会有很多种情况可以导致这个异常。我遇到的是.9图导致的这个问题。androidstudio会对.9图作严格的检查,不满足格式的.9图不会通过编译;
很明显这幅图不是.9,名字却为:unread_dot.9.png,于是编译不通过;
解决办法:网上有通过改配置比如:http://www.jianshu.com/p/f046b3f49e49;http://www.cnblogs.com/wangfeng520/p/6119531.html
改配置我没试过,我直接使用androidstudio自带的draw9patch来把问题图片修改成了.9.png图片;
问题二:
Error:(1, 1) 错误: 非法字符: \'\\ufeff\'
Error:(1, 10) 错误: 需要class, interface或enum
问题原因:Eclipse可以智能的把UTF-8+BOM文件转为普通的UTF-8文件,Android Studio不行,所以编译时出现错误
解决方法: 用其他文档编辑工具将UTF-8+BOM编码的文件转为普通的UTF-8文件。比如我用EdItPlus打开文件:file-->save as-->选择UTF-8编码,覆盖保存
问题三:
Error:Execution failed for task \':app:transformResourcesWithMergeJavaResForDebug\'.
> com.android.build.api.transform.TransformException: com.android.builder.packaging.DuplicateFileException: Duplicate files copied in APK META-INF/LICENSE
File1: C:\\Users\\Administrator\\Desktop\\Qhfpsj\\FirstSecretaryShowInfo\\LandPatrolSys\\app\\libs\\jackson-core-1.9.5.jar
File2: C:\\Users\\Administrator\\Desktop\\Qhfpsj\\FirstSecretaryShowInfo\\LandPatrolSys\\app\\libs\\jackson-mapper-1.9.5.jar
问题原因:看起来是因为多个 jar 包里包含了同样的文件(LICENSE.txt),导致打包时因为担心相互覆盖问题而提示出错。
解决方法: 尝试下在 app 下的 build.gradle 中的 android 部分增加一段配置,如下面这段代码所示:
packagingOptions { exclude \'META-INF/LICENSE\' }
继续报错:
Error:Execution failed for task \':app:transformResourcesWithMergeJavaResForDebug\'.
> com.android.build.api.transform.TransformException: com.android.builder.packaging.DuplicateFileException: Duplicate files copied in APK META-INF/LGPL2.1
File1: C:\\Users\\Administrator\\Desktop\\Qhfpsj\\FirstSecretaryShowInfo\\LandPatrolSys\\app\\libs\\jackson-core-1.9.5.jar
File2: C:\\Users\\Administrator\\Desktop\\Qhfpsj\\FirstSecretaryShowInfo\\LandPatrolSys\\app\\libs\\jackson-mapper-1.9.5.jar
那就再加一句:exclude \'META-INF/LGPL2.1\'
然后再编译,项目就可以跑起来了。
以上是关于将Eclipse项目转换成AndroidStudio项目过程中遇到的问题以及解决方法的主要内容,如果未能解决你的问题,请参考以下文章
再谈如何将android studio项目转换成eclipse
Linux16.04 LTS 环境下将cmake的项目转换成eclipse可导入可调试的工程项目