Android Studio中的Ionic Cordova(未找到已安装的构建工具)

时间:2016-07-29 14:09:19

标签: android cordova android-studio ionic2

我在离子2中开发,我试图在Android Studio中打开项目(来自离子android构建)。

我收到以下错误:

  

错误:未找到已安装的构建工具。请安装Android版本工具19.1.0或更高版本。

问题是已经安装了Build Tool:

enter image description here

我正在使用最新版本的 cordova ionic2

有什么想法吗?

2 个答案:

答案 0 :(得分:11)

您应该在cordova.gradle文件中引用doFindLatestInstalledBuildTools方法:

String doFindLatestInstalledBuildTools(String minBuildToolsVersion) {
    def availableBuildToolsVersions
    try {
        availableBuildToolsVersions = getAvailableBuildTools()
    } catch (e) {
        println "An exception occurred while trying to find the Android build tools."
        throw e
    }
    if (availableBuildToolsVersions.length > 0) {
        def highestBuildToolsVersion = availableBuildToolsVersions[0]
        if (compareVersions(highestBuildToolsVersion, minBuildToolsVersion) < 0) {
            throw new RuntimeException(
                "No usable Android build tools found. Highest installed version is " +
            highestBuildToolsVersion + "; minimum version required is " +
            minBuildToolsVersion + ".")
        }
        highestBuildToolsVersion
    } else {
        throw new RuntimeException(
        "No installed build tools found. Install the Android build tools version " +
            minBuildToolsVersion + " or higher.")
    }
}

显然,getAvailableBuildTools()返回空数组:

String[] getAvailableBuildTools() {
    def buildToolsDir = new File(getAndroidSdkDir(), "build-tools")
    buildToolsDir.list()
        .findAll { it ==~ /[0-9.]+/ }
        .sort { a, b -> compareVersions(b, a) }
}

在我的情况下,System.getenv("ANDROID_HOME")getAndroidSdkDir()方法中返回了错误的路径,因此解决方案是:

  1. 只需将System.getenv("ANDROID_HOME")替换为真正的Android SDK路径(但您应该记住SDK位置在其他PC上有所不同)
  2. $ANDROID_HOME环境变量
  3. 设置正确的路径
  4. 您可以在build.gradle个文件中手动设置构建工具版本,并跳过上述调用方法(确保为应用程序中的所有模块设置它):

    android {     buildToolsVersion&#34; your_version_here&#34; }

答案 1 :(得分:0)

我有类似的问题。我通过如下更改Project结构来修复它:

  • 版本版本= 3.5
  • Android插件版本= 2.3.1