Android Studio编译常见错误

本文介绍了Android Studio在编译过程中遇到的一些常见错误及其解决办法,包括:文件压缩失败、不支持major.minor版本、重复引用包、配置忽略文件、RxJava内存泄露问题、SSL错误、资源冲突、依赖版本冲突等,并详细讲解了如何处理创建签名文件时的JKS到PKCS12格式转换问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Android Gradle Build Error:Some file crunching failed, see logs for details解决办法

 

在主工程文件夹下的build点gradle文件里,加两句:

 

aaptOptions点cruncherEnabled = false

aaptOptions点useNewCruncher = false

 

例如:

 

 
  1. android {
  2. compileSdkVersion 22
  3. buildToolsVersion "23.0.1"
  4.  
  5. aaptOptions.cruncherEnabled = false
  6. aaptOptions.useNewCruncher = false
  7.  
  8. defaultConfig {
  9. minSdkVersion 5
  10. targetSdkVersion 17
  11. }

 

 

然后重新构建、运行

 

Unsupported major.minor version 52.0

编译Andorid 工程的时候,有时候出现gradle 报下面的错误。

 

 
  1. Error:(1, 0) Cause: com/android/build/gradle/AppPlugin : Unsupported major.minor version 52.0

这个错误的原因是在 工程的build.gradle

 

文件中的gradle 工具配置使用了gradle:+

将它

classpath 'com.android.tools.build:gradle:+'
替换为固定版本的gradle。问题解决

 classpath "com.android.tools.build:gradle:2.1.0"

 

重复引用包问题

 

 

 
  1. Error:Execution failed for task ':app:transformClassesWithJarMergingForDebug'.
  2. > com.android.build.api.transform.TransformException: java.util.zip.ZipException: duplicate entry: android/support/v7/view/CollapsibleActionView.class

 

 

这个问题是因为在工程中既有本地的lib.jar文件,又有compile链接,请确认全部统一即可。

 

 

配置忽略文件问题

 
  1. Error:Execution failed for task ':little_farmer:transformResourcesWithMergeJavaResForDebug'.
  2. > com.android.build.api.transform.TransformException: com.android.builder.packaging.DuplicateFileException: Duplicate files copied in APK META-INF/DEPENDENCIES
  3. File1: C:\Users\Administrator\Desktop\test\MyApplication\little_farmer\libs\httpmime-4.3.5.jar
  4. File2: C:\Users\Administrator\Desktop\test\MyApplication\little_farmer\libs\httpcore-4.3.2.jar
  5. File3: C:\Users\Administrator\Desktop\test\MyApplication\little_farmer\libs\httpclient-4.3.5.jar

需要在当前model的build.gradle中配置忽略文件

 
  1. packagingOptions{
  2. exclude'META-INF/DEPENDENCIES.txt'
  3. exclude'META-INF/LICENSE.txt'
  4. exclude'META-INF/NOTICE.txt'
  5. exclude'META-INF/NOTICE'
  6. exclude'META-INF/LICENSE'
  7. exclude'META-INF/DEPENDENCIES'
  8. exclude'META-INF/notice.txt'
  9. exclude'META-INF/license.txt'
  10. exclude'META-INF/dependencies.txt'
  11. exclude'META-INF/LGPL2.1'
  12. }

使用RxLifecycle反之RxJava内存泄露时导入包之后可能出现的问题:

导包:

compile 'com.trello.rxlifecycle2:rxlifecycle:2.0.1'
compile 'com.trello.rxlifecycle2:rxlifecycle-components:2.0.1'

报错信息:

Error:Conflict with dependency 'com.google.code.findbugs:jsr305' in project ':app'. Resolved versions for app (3.0.1) and test app (2.0.1) differ. See http://g.co/androidstudio/app-test-app-conflict for details.

解决办法:
在 项目的gradle文件 android{}中添加如下配置:

configurations.all {
    resolutionStrategy.force 'com.google.code.findbugs:jsr305:1.3.9'
}

 

导入项目是出现 “Error:SSL peer shut down incorrectly” 错误

我的是修改为下图就可以了(可以对照其他正常项目进行修改)

 

错误信息

C:\Users\Admin\Desktop\MyApplication\android\app\build.gradle
Error:Conflict with dependency 'com.google.code.findbugs:jsr305' in project ':app'. Resolved versions for app (3.0.0) and test app (2.0.1) differ. See http://g.co/androidstudio/app-test-app-conflict for details.

解决办法:当前Module的build.gradle中添加如下代码

android {
	......
	configurations.all {
        	resolutionStrategy.force 'com.google.code.findbugs:jsr305:1.3.9'
    	}
}

 

错误信息

Error:(4) Error: "pickerview_year" is not translated in "en" (English) [MissingTranslation]

解决办法:
String之类的文件里面 resources 标签内增加   xmlns:tools="http://schemas.android.com/tools" tools:ignore="MissingTranslation"  即可。

 
<resources> 变为 <resources xmlns:tools="http://schemas.android.com/tools" tools:ignore="MissingTranslation">
 

错误信息:Error: Program type already present: com.xxx.xxx.BuildConfig

可能是因为 有2个module在 AndroidManifest.xml 里面具有一样的package name,修改不同名字即可

错误信息:Warning:Conflict with dependency 'com.google.code.findbugs:jsr305'. Resolved versions for app (3.0.1) and test app (2.0.1) differ. See http://g.co/androidstudio/app-test-app-conflict for details.

在build.gradle的 Android{ }里添加: 
configurations.all {
        resolutionStrategy.force 'com.google.code.findbugs:jsr305:1.3.9'
    }

错误信息:AGPBI: {"kind":"error","text":"error: resource android:attr/fontVariationSettings not found.

在build.gradle的 Android{ }里添加:  

    configurations.all {
        resolutionStrategy.force "com.android.support:support-v4:27.1.0"
    }

 

创建签名文件异常

当使用AndroidStudio生成签名文件失败时提示key was created with errors
JKS密钥库使用专用格式。建议使用"keytool -importkeystore -srckeystore /Users/dxn/Desktop/test.jks -destkeystore /Users/dxn/Desktop/test.jks -deststoretype pkcs12"迁移到行业标准格式PKCS12。

上面错误提示的意思是Android希望我们将密钥从JKS专有格式迁移到PKCS12格式
此时我们需要在命令行输入:(srckeystore代表以前JKS格式的文件,destkeystore代表PKCS12格式的文件,两个文件名称要不一样)
keytool -importkeystore -srckeystore old_name.jks -destkeystore new_name.jks -deststoretype pkcs12
输入目标密钥库口令: (新.jks文件密码)
再次输入新口令: (新.jks文件密码)
输入源密钥库口令: (老.jks文件密码)
这样就会成功的生成PKCS12格式的签名文件,这个新PKCS12格式签名文件的别名和别名密码这些配置都是和老JKS格式文件一样。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值