• Android运行常见问题


    1.找不到tools.jar

    'tools.jar' seems to be not in Android Studio classpath.Please ensure JAVA_HOME points to JDK rather than JRE.

    AS找不到/lib/tools.jar,可能原因是环境变量JAVA_HOME指向了jre,正确的应该是指向jdk;另外可能原因是安装jdk时,jre的安装目录和jdk的一样,这样导致jre下的lib目录覆盖了jdk下的lib目录,导致tools.jar丢失。

    2. Failed to resolve: junit:junit:4.12

    新建的Module默认依赖 junit(java 程序测试框架),如果本地没有jar包,又没有网络可以去下载,就会报找不到jar包的错误。

    解决:
    暂时不要让Module依赖 junit,等有网了再去依赖,AS会自动下载jar包

    3. Failed to resolve: com.android.support:appcompat-v7:21.1.0

    找不到依赖包 appcompat-v7:21.1.0

    解决:
    support依赖包是系统提供的支持包,在 sdk\extras\android\m2repository\com\android\support 路径下看看你本地sdk中有依赖包的版本,然后把该版本添加到配置文件 build.gradle 中

    4. compileSdkVersion 'android-24' requires JDK 1.8 or later to compile

    Error:Execution failed for task ':app:compileDebugJavaWithJavac'. compileSdkVersion 'android-24' requires JDK 1.8 or later to compile.

    报错原因是因为使用 Android-24 的sdk需要使用 1.8 及以上版本的jdk,AS指定的jdk低于1.8,所以报错了。

    解决:
    要么指定高版本的jdk,要么降低Android编译版本compileSDKVersion,降低编译版本的同时要更改对应的buildToolsVersion,targetSdkVersion,支持包的版本

    5. 找不到类

    Error:(3, 30) 错误: 找不到符号
    符号: 类 AppCompatActivity
    位置: 程序包 android.support.v7.app

    找不到类 AppCompatActivity,所以报错。因为这个类在22及以后的版本中才有该类,所以如果要使用该类,那么就要依赖22或者更高版本的v7包。

    解决:
    依赖高版本的v7包 或者 不使用AppCompatActivity

    6. Plugin with id 'com.android.application' not found.

    ...\app\build.gradle
    Error:(1, 0) Plugin with id 'com.android.application' not found.

    找不到id是 'com.android.application' 的插件。原因是在Project下的build.gradle中没有声明插件依赖,添加依赖就可以解决问题 classpath'com.android.tools.build:gradle:2.1.0'

    7.failed to find Build Tools revision 23.0.0

    找不到版本号是 23.0.0 的 Build Tools。

    解决:
    将 sdk/build-tools/ 目录下的已有的Build Tools的版本号配置给 module/build.gradle 的buildToolsVersion

    8.failed to find target with hash string 'android-19' in: F:\as-sdk\sdk

    在本地sdk的platforms里找不到 'android-19' 的sdk。
    在Module的build.gralde中的compileSdkVersion配置的sdk必须是本地 sdk/platforms/ 中有的版本,如果配置了没有的sdk,那就会报这个错误。

    解决:
    将本地 sdk/platforms/ 中已经存在的版本,配置给Module的build.gralde中的compileSdkVersion

    9.Could not download support-annotations.jar

    Error:A problem occurred configuring project ':mymodule2'.
    Could not download support-annotations.jar (com.android.support:support-annotations:24.1.0)
    Could not get resource 'https://jcenter.bintray.com/com/android/support/support-annotations/24.1.0/support-annotations-24.1.0.jar'.

    因为没有联网,无法下载 support-annotations.jar 导致的错误。

    解决:
    联网,或者使用低于24的compileSdkVersion

    10. Gradle DSL method not found: 'android()'

    Error:(22, 0) Gradle DSL method not found: 'android()' Possible causes:

    • The project 'HelloWorld' may be using a version of Gradle that does not contain the method. Gradle settings
    • The build file may be missing a Gradle plugin. Apply Gradle plugin

    原因待查

    解决:
    看下Project下的build.gradle里是不是有 android {} dependencies {},有的话删除,重新编译即可

    11.Fail to sync ...,unknow host 'service.gradle.org'...

    如果设置指定的是使用本地的 gradle,那么原因就是 gradle-wrapper.properties 中指定的gradle在本地没有,AS去网络上取,又没有联网,所以报这个错。

    解决:

    联网下载 或者 修改 gradle-wrapper.properties 中的gradle为本地有的版本

    12.

  • 相关阅读:
    十九、kafka消费者思考之partition leader切换会引起消费者Rebalance么?
    这几个方法,直接让你的API接口飞起来
    C++ 两个算法题目
    忽视日志吃大亏,手把手教你玩转 SpringBoot 日志
    Apache Airflow (十一) :HiveOperator及调度HQL
    WPS Office for Linux即将面临开源
    selenium
    十五、异常(4)
    OpenCV机器视觉-形态学变换
    安装Conda和配置Jupiter
  • 原文地址:https://blog.csdn.net/chezabo6116/article/details/126389617