android studio 3.0 升级 项目遇到的问题及更改思路(问题小结)

作者:翻越高山 时间:2021-06-14 17:19:16 

Android Studio从3.0版本新增了许多功能,当然首当其冲就是从3.0版本新增了对 Kotlin 开发语言的支持,除此之外还有其他一些新功能,例如:Android Profiler (其中包含了: CPU Profiler、Memory Profiler、Network Profiler ),APK Debugger,Device File Explorer,Java 8 Language Features等。

android studio 3.0 升级 项目遇到的问题及更改思路(问题小结)

android studio 3.0版本升级问题修改:

===》 问题一


Error:Cannot choose between the following configurations of project :pickerview:
- debugApiElements
- debugRuntimeElements
- releaseApiElements
- releaseRuntimeElements
All of them match the consumer attributes:
- Configuration 'debugApiElements':
 - Found com.android.build.api.attributes.BuildTypeAttr 'debug' but wasn't required.
 - Found com.android.build.gradle.internal.dependency.AndroidTypeAttr 'Aar' but wasn't required.
 - Found com.android.build.gradle.internal.dependency.VariantAttr 'debug' but wasn't required.
 - Found org.gradle.api.attributes.Usage 'java-api' but wasn't required.
- Configuration 'debugRuntimeElements':
 - Found com.android.build.api.attributes.BuildTypeAttr 'debug' but wasn't required.
 - Found com.android.build.gradle.internal.dependency.AndroidTypeAttr 'Aar' but wasn't required.
 - Found com.android.build.gradle.internal.dependency.VariantAttr 'debug' but wasn't required.
 - Found org.gradle.api.attributes.Usage 'java-runtime' but wasn't required.
- Configuration 'releaseApiElements':
 - Found com.android.build.api.attributes.BuildTypeAttr 'release' but wasn't required.
 - Found com.android.build.gradle.internal.dependency.AndroidTypeAttr 'Aar' but wasn't required.
 - Found com.android.build.gradle.internal.dependency.VariantAttr 'release' but wasn't required.
 - Found org.gradle.api.attributes.Usage 'java-api' but wasn't required.
- Configuration 'releaseRuntimeElements':
 - Found com.android.build.api.attributes.BuildTypeAttr 'release' but wasn't required.
 - Found com.android.build.gradle.internal.dependency.AndroidTypeAttr 'Aar' but wasn't required.
 - Found com.android.build.gradle.internal.dependency.VariantAttr 'release' but wasn't required.
 - Found org.gradle.api.attributes.Usage 'java-runtime' but wasn't required.

===》解决方法:

Warning:android-apt plugin is incompatible with future version of Android Gradle plugin. Please use ‘annotationProcessor' configuration instead.

原因:更新Android studio 原来项目出现问题。

分析: 尤其是采用butterknife工具的,采用新的Android Studio都会出现这样的问题,本人根据提示最后猜测原因可能是Android studio更新,然后gradle更新了,这样的话可能使原来的android-apt 工具跟不上节奏了,所以让采用annotationProcessor工具。

解决: 把project下的build.gradle 当中的依赖

修改成如下:


buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath ‘com.android.tools.build:gradle:2.4.0-alpha7'
//classpath ‘com.neenbedankt.gradle.plugins:android-apt:1.8' //注释掉
}
}

然后再把module下的build.gradle :

修改如下:


dependencies {
compile project(‘:roadvance-sdk')
compile ‘com.google.dagger:dagger:2.10'
//apt ‘com.google.dagger:dagger-compiler:2.10'
annotationProcessor ‘com.google.dagger:dagger-compiler:2.10'
compile ‘com.android.support:appcompat-v7:25.3.1'
compile ‘com.jakewharton:butterknife:8.5.1'
//apt ‘com.jakewharton:butterknife-compiler:8.5.1'
annotationProcessor ‘com.jakewharton:butterknife-compiler:8.5.1'
}

再把 apply plugin: ‘com.neenbedankt.android-apt ' 这个引用给删除。

重新reBuild的一下

===》 问题二

Error:Execution failed for task ':wigetlib:javaPreCompileDebug'. 
> Annotation processors must be explicitly declared now.  The following dependencies on the compile classpath are found to contain annotation processor.  Please add them to the annotationProcessor configuration. 
    - butterknife-7.0.1.jar (com.jakewharton:butterknife:7.0.1) 
  Alternatively, set android.defaultConfig.javaCompileOptions.annotationProcessorOptions.includeCompileClasspath = true to continue with previous behavior.  Note that this option is deprecated and will be removed in the future. 
  See https://developer.android.com/r/tools/annotation-processor-error-message.html for more details. 

解决方法:

在app的build中


android {
 ...
defaultConfig {
    ...
   //添加如下配置就OK了
javaCompileOptions {
     annotationProcessorOptions {
      includeCompileClasspath = true
     }
    }
    ...
 }
   ...
}

=====》 问题三

Information:Gradle tasks [:pickerview:generateDebugSources, :pickerview:generateDebugAndroidTestSources, :pickerview:mockableAndroidJar, :zhxflib:generateDebugSources, :zhxflib:generateDebugAndroidTestSources, :zhxflib:mockableAndroidJar, :wigetlib:generateDebugSources, :wigetlib:generateDebugAndroidTestSources, :wigetlib:mockableAndroidJar, :app:generateDebugSources, :app:generateDebugAndroidTestSources, :app:mockableAndroidJar] 
D:\zhihuixinfanWorkerSpace\ZhiHuiXinFan\app\build\intermediates\manifests\full\debug\AndroidManifest.xml 
Error:(12) error: unknown element <uses-library> found. 
Error:(12) unknown element <uses-library> found. 
Error:java.util.concurrent.ExecutionException: java.util.concurrent.ExecutionException: com.android.tools.aapt2.Aapt2Exception: AAPT2 error: check logs for details 
Error:java.util.concurrent.ExecutionException: com.android.tools.aapt2.Aapt2Exception: AAPT2 error: check logs for details 
Error:com.android.tools.aapt2.Aapt2Exception: AAPT2 error: check logs for details 
Error:Execution failed for task ':app:processDebugResources'. 
> Failed to execute aapt 
Information:BUILD FAILED in 8s 
Information:6 errors 
Information:0 warnings 
Information:See complete output in console 

解决方法:

在项目的gradle.properties中:

android.enableAapt2=false

修改了以上问题,我的项目可以正常运行了!!!

总结

以上所述是小编给大家介绍的android studio 3.0 升级 项目遇到的问题及更改思路(问题小结)网站的支持!

来源:http://blog.csdn.net/wuqilianga/article/details/78354454?readlog

标签:android,studio,3.0,升级
0
投稿

猜你喜欢

  • 深入学习Java编程中的字符串的进阶使用

    2023-11-11 12:54:20
  • Java如何定义Long类型

    2022-05-28 22:28:52
  • HttpsURLConnection上传文件流(实例讲解)

    2022-03-02 16:54:47
  • 解决CollectionUtils.isNotEmpty()不存在的问题

    2021-11-15 12:03:17
  • java实现捕鱼达人游戏

    2023-11-23 21:28:59
  • 基于C#调用c++Dll结构体数组指针的问题详解

    2021-12-10 23:16:41
  • java状态机方案解决订单状态扭转示例详解

    2022-01-10 02:55:43
  • java8 实现提取集合对象的每个属性

    2023-10-17 19:37:27
  • Android使用PowerImageView实现播放强大的ImageView动画效果

    2022-06-16 19:55:54
  • SpringBoot全局异常与数据校验的方法

    2023-12-11 10:46:06
  • java生成指定范围随机数的多种代码

    2023-04-28 07:51:15
  • 一次Jvm old过高的排查过程实战记录

    2023-05-07 23:33:49
  • java中ResultSet遍历数据操作

    2022-06-13 05:02:13
  • 为什么Java volatile++不是原子性的详解

    2022-03-09 23:39:41
  • 使用okhttp替换Feign默认Client的操作

    2021-10-03 16:57:59
  • Java中Json字符串直接转换为对象的方法(包括多层List集合)

    2021-06-26 18:13:42
  • C#通过rabbitmq实现定时任务(延时队列)

    2021-11-02 23:11:17
  • Spring中集成Groovy的四种方式(小结)

    2023-07-11 16:36:53
  • SpringMVC实现文件上传和下载功能

    2022-10-03 18:22:27
  • 50 道Java 线程面试题(经典)

    2023-11-23 19:47:37
  • asp之家 软件编程 m.aspxhome.com