android studio导入第三方库引发的问题和解决方法

今天想在android studio上使用slidingmenu,然后层层的困难就出现了,几近崩溃,还好最后是解决了。

先来说说怎么导入:

1.用import eclipse project导入library

2.File——Project Structure——选中app——Dependencies——右边的加号——选第三个(Module dependency)——将slidingmenu与app关联

3.查看 slidingmenu的build_gradle

dependencies {
    classpath 'com.android.tools.build:gradle:1.5.0'
}

这部分代码可能会报错,根据提示改成相应的值就行


这样就算是ok了,但是也可能坏发生和我一样的错误

Error:Execution failed for task ':app:transformClassesWithDexForDebug'.
> com.android.build.api.transform.TransformException: com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command 'C:\Program Files\Java\jdk1.7.0_17\bin\java.exe'' finished with non-zero exit value 2


看到jdk的路径我以为是jdk版本的问题,还特意装了jdk1.7,发现没有用,搜索之后得到解决方法:

在app下的build.gradle中加上最后的那句

defaultConfig {
...
...
    multiDexEnabled true
}

不知道具体是为什么,但是解决了

随后又出现了这个问题:

Error:Execution failed for task ':app:transformClassesWithJarMergingForDebug'.
> com.android.build.api.transform.TransformException: java.util.zip.ZipException: duplicate entry: android/support/v4/app/ShareCompat$ShareCompatImplJB.class


多方搜索无果,整整困扰了大半天,几乎快崩溃了,和大家分享一下最后的解决方案


这个应该是因为slidingmenu中有support-v4这个支持库,而app本身也是有这个的,重复了。所以这样解决:

1..File——Project Structure——选中slidingmenu——Dependencies——右边的减号,这样它lib目录下的support-v4就没了,无数的红条出现,报错

2.接着要给它关联app的support-v4:

.File——Project Structure——选中app——Dependencies——右边的加号——选第一个(Library dependency),会出现support-v4,选中ok

3.同样的方法app也关联下support-v4,这样就大功告成了。


导入jar包产生的错误:

Error:(47, 31) 错误: 无法访问HttpRequestBase
找不到org.apache.http.client.methods.HttpRequestBase的类文件

解决方法:

在app的build_gradle下添加

android {
    useLibrary 'org.apache.http.legacy'
}


Android Studio把一个moudle作为类库:

1.import moudle并处理好相应的错误

2.把module设置为android library,修改对应module下面的build.gradle,把apply plugin后面的值修改为:

  apply plugin: 'com.android.library'

3.别的moudle将其设置为依赖

4.将导入的moudle中的AndroidManifest文件中的application标签删除


出现  错误

Error:(2, 1) A problem occurred evaluating project ':library'.
> Plugin with id 'com.github.dcendents.android-maven' not found.


在Project下的build.gradle 中添加

dependencies {
	.........
    classpath 'com.github.dcendents:android-maven-gradle-plugin:1.3'
    classpath 'com.jfrog.bintray.gradle:gradle-bintray-plugin:1.0'
    // NOTE: Do not place your application dependencies here; they belong
    // in the individual module build.gradle files
}

猜你喜欢

转载自blog.csdn.net/vice_Q/article/details/50625407